一种基于强化学习的多次级用户移动边缘计算的方法
技术领域
本发明涉及无线通信领域,更具体地说,是涉及一种基于强化学习的多次级用户移动边缘计算方法,是一种用于频谱资源紧张,时延和能耗要求高的移动边缘计算无线通信环境的方法。
背景技术
使用传统的优先级扫描方法仅适用于确定性的环境,对于未知环境无法得出理想结果。而基于传统的无模型Q学习的方法,会进行所有状态动作值的更新,多次计算所有状态动作值,耗费时间较长,无法快速得出选择边缘服务器及确定移动边缘卸载任务量的最优策略。为了提高整个***的频谱资源利用率,研究者提出了一些基于模型假设和已知通信环境的频谱共享和频谱资源配置等方法,但是这些方法并不能兼顾每个次级用户效用,和边缘服务器选择最优策略的收敛速度。
发明内容
本发明的目的是解决传统的移动边缘计算方法不能兼顾用户时延能耗要求与***效用性、最优策略收敛速度的问题,提供了基于强化学习中Dyna结构下优先级扫描的多次级用户的移动边缘计算方法。
为实现上述目的,本发明提供的技术方案如下:
基于强化学习的多次级用户的移动边缘计算方法,其特征在于,所述交换方法包括下列步骤:
S1、***初始化参数,确定主级用户的个数N
P,次级用户的个数N
S,边缘服务器的个数以及控制节点的个数N
M,次级用户的发射功率P,次级用户的任务量为Task,每一个次级用户与边缘服务器之间信道的信道容量C,通信紧急度Em为零;初始化方法参数,边缘服务器所对应的信道的状态
初始为未占用,值为零,初始化Q值均为零,学习速率为α,折现因子为δ,优先级函数值为零,优先级阈值为θ,且优先级队列为空,开始迭代;
S2、主级用户选择占用边缘服务器MP,该服务器的状态值为1;
S3、次级用户i根据ε-贪婪策略提出占用边缘服务器资源的申请Mi1,并且确定计算卸载的任务量x;
S4、控制中心处理各次级用户的申请,并且为其分配边缘服务器;
S5、获得边缘服务器资源的次级用户实现卸载计算,未获得占用资格的次级用户,则进行完全本地计算;
S6、计算各次级用户当前效用作为即时回报,并将即时回报和成功连接的边缘服务器更新至优先级模型中;
S7、更新通信紧急度,且更新Q值和优先级函数,若优先级函数高于阈值θ,则将此状态和选择加入优先级队列中,并按照优先级顺序更新相应的Q值;
S8、判断是否满足迭代终止条件,若满足,则计算整个方法执行后各次级用户平均效用;若不满足,则跳转至步骤S2。
作为优选的,所述步骤S4具体包括:
S41、控制中心将各个次级用户的申请进行处理;
S42、若边缘服务器所对应的信道状态为1,则申请该服务器的次级用户不可获得使用权,跳转到步骤S44;
S43、若一个边缘服务器仅被申请一次,则该边缘服务器由所申请的次级用户占用,即成功占用原申请服务器;
S44、若边缘服务器被申请两次及以上,则根据各个次级用户的通信紧急度进行排序,通信紧急度较高的优先获得边缘服务器的使用权,即占用非原申请服务器资源;
S45、未获得边缘服务器使用权的次级用户,则被随机分配未被申请的边缘服务器,保证所有的边缘服务器均被占用或者次级用户均获得服务器资源;若存在边缘服务器已占满,部分次级用户未获得服务器资源,那么次级用户只能进行完全本地计算。
作为优选的,所述步骤S6具体包括:
S61、各次级用户的效用性包含两个部分,主要有计算的延时和计算的能耗,与效用性成反比;
S62、进行本地计算的次级用户的效用值中,包含本地计算延时和本地计算能耗;进行计算部分卸载的次级用户的效用值中,包含本地计算延时、本地计算能耗、卸载时延和卸载能耗。
作为优选的,所述步骤S7具体包括:
S71、更新通信度主要是根据次级用户是否成功获得边缘服务器资源决定,若次级用户成功占用原申请服务器,则其通信紧急度保持不变;若次级用户仅可使用非原申请边缘服务器,则Em+1;若次级用户并未获得服务器的资源,仅能完全本地计算,那么其Em+2;
S72、更新Q值为,将以学习速率α学习到的未来折扣回报与当前Q值之间的误差,即预测误差,叠加至当前Q值之上;更新优先级函数为,取预测误差和当前优先级函数值的最大值作为新的优先级函数值。
与现有技术相比,本发明的有益效果在于:
1、本发明公开的基于强化学习的多次级用户的移动边缘计算方法相比于大部分传统的移动边缘计算方法来说,可适应时变的环境,兼具提升效用、收敛速度快的优势,大大提高***资源利用率,在满足主级用户资源需求的同时可满足次级用户延时与能耗要求,适于频谱资源紧张,时延能耗要求高的移动边缘计算无线环境。
2、本发明公开的基于强化学习的多次级用户的移动边缘计算方法,相比于大部分传统的Q学习边缘服务器和随机选择的频谱资源配置方法,本发明公开的方法能够以更快的速度收敛至最优策略。
附图说明
下面结合附图和实例对本发明作进一步说明。
图1是本发明提出的基于强化学习的多次级用户的移动边缘计算方法的流程步骤图;
图2本发明中控制中心处理次级用户申请的流程步骤图;
图3本发明中计算次级用户效用值的流程步骤图;
图4是本发明中更新通信紧急度、Q函数和优先级函数的流程步骤图;
图5(a)是次级用户1的基于简单Q学习和本发明方法的效用对比图;
图5(b)是次级用户2的基于简单Q学习和本发明方法的效用对比图;
图5(c)是次级用户1的基于简单Q学习和本发明方法的能耗对比图;
图5(d)是次级用户2的基于简单Q学习和本发明方法的能耗对比图;
图5(e)是次级用户1的基于简单Q学习和本发明方法的时延对比图;
图5(f)是次级用户2的基于简单Q学习和本发明方法的时延对比图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
本实施例设计了一种基于强化学习的多次级用户的移动边缘计算方法。本发明中交换方法的处理流程包括:
S1、***初始化参数,确定主级用户的个数N
P,次级用户的个数N
S,边缘服务器的个数以及控制节点的个数N
M,次级用户的发射功率P,次级用户的任务量为Task,每一个次级用户与边缘服务器之间信道的信道容量C,通信紧急度Em为零;初始化方法参数,边缘服务器所对应的信道的状态
初始为未占用,值为零,初始化Q值均为零,学习速率为α,折现因子为δ,优先级函数值为零,优先级阈值为θ,且优先级队列为空,开始迭代;
S2、主级用户选择占用边缘服务器MP,该服务器的状态值为1;
S3、次级用户i根据ε-贪婪策略提出占用边缘服务器资源的申请Mi1,并且确定计算卸载的任务量x;
S4、控制中心处理各次级用户的申请,并且为其分配边缘服务器;
S41、未获得边缘服务器使用权的次级用户,则被随机分配未被申请的边缘服务器,保证所有的边缘服务器均被占用或者次级用户均获得服务器资源;若存在边缘服务器已占满,部分次级用户未获得服务器资源,那么次级用户只能进行完全本地计算。
S42、获得边缘服务器资源的次级用户实现卸载计算,未获得占用资格的次级用户,则进行完全本地计算;
S6、计算各次级用户当前效用作为即时回报,并将即时回报和成功连接的边缘服务器更新至优先级模型中;进行本地计算的次级用户的效用值中,包含本地计算延时和本地计算能耗;进行计算部分卸载的次级用户的效用值中,包含本地计算延时、本地计算能耗、卸载时延和卸载能耗。
S7、更新通信紧急度,若次级用户成功占用原申请服务器,则其通信紧急度保持不变;若次级用户仅可使用非原申请边缘服务器,则Em+1;若次级用户并未获得服务器的资源,仅能完全本地计算,那么其Em+2;且更新Q值,将以学习速率α学习到的未来折扣回报与当前Q值之间的误差,即预测误差,叠加至当前Q值之上;并取预测误差和当前优先级函数值的最大值作为新的优先级函数值,若优先级函数高于阈值θ,则将此状态和选择加入优先级队列中,并按照优先级顺序更新相应的Q值;
S8、设置迭代1000时隙和500次独立实验。判断是否满足迭代终止条件,若满足,则计算整个方法执行后各次级用户平均效用;若不满足,则跳转至步骤S2。
本移动边缘计算方法的关键在于使用强化学习方法使用户可以在选择移动边缘服务器的过程中适应多变的环境。其中,利用强化学习中的Dyna结构下的优先级扫描算法,结合优先级扫描方法的优先更新优先级较高的状态和Q学习的与环境交互获得经验的优势,在满足用户时延和能耗的要求下获得最优的移动边缘服务器的选择策略。
实施例二
本实施例结合说明书附图1至图5并以一个具体的含两个次级用户的移动边缘计算实施例对本发明提出的基于强化学习的移动边缘计算方法作一下详细的说明。
考虑***模型如下:在移动边缘计算的过程中,1个主级用户,2个次级用户,选择利用3个边缘服务器,进行卸载任务。次级用户1的任务量为Task1,次级用户2的任务量为Task2,两个次级用户与三个边缘服务器之间的信道容量为矩阵C,通信紧急度为零。边缘服务器对应的信道状态均为零,即未被占用。Q值为零,学习速率为0.8,折扣因子为0.02,优先级函数值零,优先级阈值为0.15,且优先级队列为空,开始迭代。
在每个时隙中,主级用户首先占用边缘服务器,使其对应信道的状态为1,次级用户使用ε-贪婪策略提出使用边缘服务器的申请,并确定计算任务卸载的量。控制中心处理各次级用户的申请,并且分配边缘服务器,保证所有的边缘服务器均被占用或者次级用户均获得服务器资源;若存在边缘服务器已占满,部分次级用户未获得服务器资源,那么次级用户只能进行完全本地计算。
若进行本地计算,则计算本地的时延和能耗;若进行计算卸载,则计算两个部分,包括本地计算的时延能耗、卸载计算的时延和能耗。并更新效用值、Q值和优先级函数值。
在每个时隙中,两个次级用户,互相受到对方边缘服务器选择的影响,目标为最大化效用值。迭代的终止条件为,共进行300时隙,700次独立实验。
图5(a)的仿真结果表明,在效用值的方面,对于次级用户1,本发明提出的基于强化学习的移动边缘计算方法比基于简单的Q学习的收敛速度快约50%。图5(b)的仿真结果说明,对于次级用户2,本发明方法在效用值上比基于简单的Q学习的收敛速度快约30%。由图5(c)和图5(d)所示,本发明提出的方法对于两个次级用户的能耗都比基于简单的Q学习具有更好的性能。图5(e)和图5(f)表明,在计算时延方面,本发明提出的方法具有更好的性能。
综上,本发明提出的方法,在效用值、计算能耗和计算时延方面,相比于基于简单的Q学习,在保证最优值不变和同时兼顾两个次级用户的性能的情况下,具有更快的收敛速度。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。