CN113490157A - 一种基于深度强化学习的组播调度方法 - Google Patents

一种基于深度强化学习的组播调度方法 Download PDF

Info

Publication number
CN113490157A
CN113490157A CN202110761307.3A CN202110761307A CN113490157A CN 113490157 A CN113490157 A CN 113490157A CN 202110761307 A CN202110761307 A CN 202110761307A CN 113490157 A CN113490157 A CN 113490157A
Authority
CN
China
Prior art keywords
multicast
time slot
channel
beginning
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110761307.3A
Other languages
English (en)
Other versions
CN113490157B (zh
Inventor
黄川�
崔曙光
李然
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chinese University of Hong Kong Shenzhen
Original Assignee
Chinese University of Hong Kong Shenzhen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chinese University of Hong Kong Shenzhen filed Critical Chinese University of Hong Kong Shenzhen
Priority to CN202110761307.3A priority Critical patent/CN113490157B/zh
Publication of CN113490157A publication Critical patent/CN113490157A/zh
Application granted granted Critical
Publication of CN113490157B publication Critical patent/CN113490157B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • H04W72/1263Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows
    • H04W72/1273Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows of downlink data flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/54Allocation or scheduling criteria for wireless resources based on quality criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种基于深度强化学习的组播调度方法,所述方法包括以下步骤:S1.构建组播网络模型并确定组播调度的目标问题;设一个小区中,用户随机请求提前缓存在基站里的N种内容,基站采用M个可用信道施行这N个内容的组播传输;考虑时隙化的模型,组播传输的开始和结束都发生在时隙的初始或结尾,而不会发生在时隙中间;S2.构建组播网络的离线学习模型;S3.进行离线训练得到成熟的模型;S4.对训练得到的模型进行在线应用,实现组播调度。本发明提供的组播调度方法,适用于带有时变约束条件和高维离散行动空间的马尔科夫决策过程,有效实现了异步组播通信下的组播调度。

Description

一种基于深度强化学习的组播调度方法
技术领域
本发明涉及通信领域,特别是涉及一种基于深度强化学习的组播调度方法。
背景技术
近些年来,移动通信的用户量和数据量飞速增加。到2022年,移动用户数量预计达到67亿,而移动通信数据量预计达到72Eb每月,其中79%的数据量都是用户们会重复请求的视频数据。传统蜂窝网络采用的一个信道完成一个通信请求的单播技术很难维持如此艰巨的通信任务。因此我们希望在蜂窝网络中采用组播技术,其利用了通信数据量重复度较高的特点,可以使用一个信道同时服务一组请求相同内容的通信请求,从而大大提升了能量使用效率(即服务一个请求的平均能量)。值得注意的是,通信请求的达到具有随机性,在组播通信下,不同的通信请求会产生不同的通信时延。因此,能量使用效率和平均通信时延的折中设计是组播通信的一个焦点,被称为组播调度问题。
组播调度问题一般被考虑为马尔科夫决策过程(Markov decision process,MDP);异步组播通信考虑用户请求的不同内容在不同的信道上进行组播传输需要消耗不同的时间,这种情况下的组播调度问题被考虑为存在时变限制条件以及高维离散行动空间的MDP,当前该问题并不存在高效的解决算法,异步组播通信下的组播调度问题是一个科研空区。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于深度强化学习的组播调度方法,适用于带有时变约束条件和高维离散行动空间的马尔科夫决策过程,有效实现了异步组播通信下的组播调度。
本发明的目的是通过以下技术方案来实现的:一种基于深度强化学习的组播调度方法,包括以下步骤:
S1.构建组播网络模型并确定组播调度的目标问题;
S2.构建组播网络的离线学习模型;
S3.进行离线训练得到成熟的模型;
S4.对训练得到的模型进行在线应用,实现组播调度。
其中,所述步骤S1包括:
设一个小区中,用户随机请求提前缓存在基站里的N种内容,基站采用M个可用信道施行这N个内容的组播传输;考虑时隙化的模型,组播传输的开始和结束都发生在时隙的初始或结尾,而不会发生在时隙中间;
在第t个时隙内,新到达的对第n个内容的请求数量为qn(t),这些请求到达后,并不会被基站安排信道立即执行组播传输,而是暂时存储在基站里并组成序列qn(t),即在第t个时隙初始时,未被服务的对第n个内容的请求序列;
Figure BDA0003149903320000021
其中,ln(t)表示在第t个时隙初始时算起,未被服务的对第n个内容的所有请求当中,最早达到的请求被延迟的时隙数;
将对第n个内容的请求延迟τ个时隙产生的瞬时时延惩罚定义为pn(τ),则第t个时隙,qn(t)内的请求会产生总瞬时时延惩罚
Figure BDA0003149903320000022
其中ln(t)定义为qn(t)序列的元素数量,一般等于距离第n个内容上一次组播的时隙数;如果第t个时隙内我们选择去组播第n个内容,则对第n个内容的请求序列qn(t)会被清空而不会产生任何瞬时时延惩罚;
定义bn(t)为第n个内容在第t个时隙的组播状态,如果至少一个信道在第t个时隙初始时开始组播第n个内容,其值为1;否则值为0;
Figure BDA0003149903320000023
其中am(t)为第t个时隙初始时,第m个信道的决定:如果值为0,代表该信道不进行任何内容的组播;如果值为非零整数n,代表该信道于第t个时隙初始时开启第n个内容的组播;
Figure BDA0003149903320000024
函数只有在输入为n的时候输出为1,否则输出为0;那么qn(t)里的请求产生的瞬时时延惩罚为
Figure BDA0003149903320000025
另外,如果第m个信道在第t个时隙初始时开启对第am(t)个内容的组播,即am(t)≠0,则该组播传输的单位时隙能耗为
Figure BDA0003149903320000026
其中
Figure BDA0003149903320000027
为在第m个信道上对第am(t)个内容进行组播的单位时隙能耗系数,
Figure BDA0003149903320000028
Figure BDA0003149903320000029
中所有请求对应的用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;定义Tnm为在第m个信道上对第n个内容进行组播需要的时隙数量,则组播的总能耗为
Figure BDA00031499033200000210
如果第m个信道在第t个时隙初始时不开启任何内容的组播,即am(t)=0,则不会消耗能量;所以,基于组播调度决定am(t),将第m个信道在第t个时隙组播传输的总能耗总结为:
Figure BDA0003149903320000031
组播调度的目标问题是折中优化对N个内容所有请求的平均瞬时时延惩罚以及M个信道所有组播传输的平均能耗,总结为
Figure BDA0003149903320000032
其中:
Figure BDA0003149903320000033
Figure BDA0003149903320000034
Figure BDA0003149903320000035
其中,V是能耗和瞬时时延惩罚的重要性比值;(1.1)和(1.2)中参数的动态更新规则由系统模型分析得到:
(1.1)解释了第n个内容的请求序列qn(t)的元素数量,即ln(t)的更新方法,讨论以下四种情况:
一,如果至少一个信道在第t个时隙初始时开始组播第n个内容且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=1,qn(t)=0,那么存储在qn(t)中的旧请求因被服务而清空,加上没有新请求,则第t+1个时隙时的请求序列qn+1(t)为空,其元素数量ln+1(t)为0;
二,如果同样至少一个信道在第t个时隙初始时开始组播第n个内容,但是有非零个新请求到达,即bn(t)=1,qn(t)>0,那么第t+1个时隙时,第n个内容的请求序列只包含了这些新请求,即qn+1(t)=[qn(t)],其长度ln+1(t)为1;
三,如果没有信道在第t个时隙初始时开始组播第n个内容,第n个内容的原请求序列qn(t)为空,即没有旧请求,而且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=0,qn(t)=0,ln(t)=0,那么第t+1个时隙时,第n个内容的请求序列qn+1(t)不包含任何请求,其元素数量ln+1(t)为0;
四,其他情况下,第t+1个时隙时,第n个内容的请求序列qn+1(t)由旧请求序列qn(t)和新到达的请求qn(t)构成,即qn+1(t)=[qn(t),qn(t-1),…,qn(t-ln(t))],其元素数量ln+1(t)为ln(t)+1;
(1.2)解释了N个内容的组播对M个信道占用情况的更新方法:首先cnm(t)被定义为在第t个时隙初始时,第n个内容的组播对第m个信道的占用情况:如果值为0,代表第m个信道当前没有进行第n个内容的组播传输;否则,代表第m个信道已经执行了第n个内容的组播传输cnm(t)个时隙;
讨论以下五种情况得到cnm(t)的更新规则:
一,如果第n个内容的组播传输只会占用第m个信道一个时隙,即Tnm=1,那么即使第m个信道在当前时隙开启了第n个内容的组播传输,下个时隙开始时,它都已经完成该组播传输并闲置出来,所以cnm(t+1)恒等于0;
二,如果第n个内容的组播传输占用第m个信道的时间多于一个时隙,即Tnm>1,而且第m个信道在当前时隙开启了第n个内容的组播传输,即am(t)=n,那么在下个时隙开始时,第m个信道已经执行了第n个内容的组播传输一个时隙,即cnm(t+1)=1;
三,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道当前没有执行对第n个内容的组播传输,即cnm(t)=0,那么下个时隙开始时,第m个信道依然没有执行着对第n个内容的组播传输,即cnm(t+1)=0;
四,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输已经执行了Tnm-1个时隙,即cnm(t)=Tnm-1,那么下个时隙开始时,第m个信道将结束对第n个内容的组播传输回到闲置状态,即cnm(t+1)=0;
五,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输的执行时间满足0<cnm(t)<Tnm-1,那么下个时隙开始时,第m个信道对第n个内容的组播传输的累计执行时间加一,即cnm(t+1)=cnm(t)+1;
(1.3)中
Figure BDA0003149903320000051
定义为第t个时隙初始时,第m个信道的占用状态:如果第m个信道正在进行任意一个内容的组播,其值为1;否则值为0:
Figure BDA0003149903320000052
这里
Figure BDA0003149903320000053
函数只有在输入为正的时候输出为1,否则输出为0;
所以第m个信道只能在
Figure BDA0003149903320000054
的条件下才能开启新的组播,即
Figure BDA0003149903320000055
对于所有的m和t恒成立;
上述问题是一个MDP问题,其包含
状态:
Figure BDA0003149903320000056
含义为在第t个时隙初始时,所有能够观测到的信息,也是马尔科夫决策过程的状态;
其中,
Figure BDA0003149903320000057
表示在第t个时隙初始时,未被服务的对N个内容的请求序列集合;
Figure BDA0003149903320000058
在第t个时隙初始时,N个内容对M个信道的占用情况;
Figure BDA0003149903320000059
在第t个时隙初始时,N个内容在M个信道上进行组播传输需要的信道参数;
Figure BDA00031499033200000510
表示在第t个时隙初始时,未被服务的对第n个内容的所有请求对应的发送用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;
Figure BDA00031499033200000511
表示在第t个时隙初始时,未被服务的对第n个内容的所有请求对应的发送用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;
hnmk(t)表示在第t个时隙初始时,未被服务的对第n个内容的所有请求当中,第k个请求的发送用户与基站之间采用第m个信道进行下行组播传输时的信道系数;
行动:
Figure BDA0003149903320000061
其含义为在第t个时隙初始时,所有信道的决定,也是马尔科夫决策过程的行动;
Figure BDA0003149903320000062
表示,在第t个时隙初始时,未被服务的对第n个内容的所有请求当中,第k个请求的发送用户与基站之间采用第m个信道进行下行组播传输时的信道系数从hi变为hj的概率。
状态转移:按照条件(1.1)和(1.2)进行;
代价:
Figure BDA0003149903320000063
并且MDP问题存在时变限制条件(1.3)和高维离散行动空间。
其中,所述步骤S2包括以下子步骤:
S201.搭建状态修正模块:
该模块把状态
Figure BDA0003149903320000064
中具有时变维度的Q(t)修正为具有固定维度的矩阵
Figure BDA0003149903320000065
其中M*是一个基于组播系统复杂度给定的常数;修正采用如下公式:
Figure BDA0003149903320000066
经过修正后,定义修正后的状态为
Figure BDA0003149903320000067
维度为M*N+2MN;
S202.搭建DDPG模块,DDPG模块包含actor-critic网络和经历回放模块,搭建过程包括:
S2021.搭建actor-critic网络,该网络包括actor网络和critic网络:
actor网络包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN,输出层节点数量为M,将两个网络包含的神经网络参数定义为θπ
Figure BDA0003149903320000068
critic网络也包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN+M,输出层节点数量为1,将两个网络包含的神经网络参数定义为θQ
Figure BDA0003149903320000069
S2022.搭建经历回放模块,该模块包含经历缓存模块和mini-batch模块;
经历缓存模块的基本储存单元为
Figure BDA0003149903320000071
并命名为经历,经历缓存模块最多存储NR个经历;
mini-batch模块的功能是从经历缓存模块中随机采样出N0个经历;
S203.构建行动嵌入模块,该模块调用DDPG模块的评估网络,基于修正后的状态
Figure BDA0003149903320000072
计算得到沃尔珀丁格行动
Figure BDA0003149903320000073
包括:
S2031.调用DDPG模块actor网络的评估网络,将
Figure BDA0003149903320000074
作为输入,输出记为
Figure BDA0003149903320000075
并命名为初始行动;
S2032.对
Figure BDA0003149903320000076
中所有元素按照四舍五入取整,得到的结果记为
Figure BDA0003149903320000077
Figure BDA0003149903320000078
的第m个元素为
Figure BDA0003149903320000079
Figure BDA00031499033200000710
S2033.对
Figure BDA00031499033200000711
进行第一次合理性修正并将修正的结果记为
Figure BDA00031499033200000712
Figure BDA00031499033200000713
的第m个元素为
Figure BDA00031499033200000714
Figure BDA00031499033200000715
S2034.对
Figure BDA00031499033200000716
进行第二次合理性修正并将修正的结果记为
Figure BDA00031499033200000717
Figure BDA00031499033200000718
的第m个元素为
Figure BDA00031499033200000719
如果
Figure BDA00031499033200000720
成立,则
Figure BDA00031499033200000721
满足限制条件(1.3),即
Figure BDA00031499033200000722
此时令
Figure BDA00031499033200000723
如果
Figure BDA00031499033200000724
不成立,令
Figure BDA00031499033200000725
可知
Figure BDA00031499033200000726
满足限制条件(1.3),将其命名为候选行动;概括本步骤为
Figure BDA00031499033200000727
S2035.基于
Figure BDA00031499033200000728
找到更多满足限制条件的行动,并命名为排列行动
Figure BDA00031499033200000729
Figure BDA00031499033200000730
的第m个元素为
Figure BDA00031499033200000731
如果
Figure BDA00031499033200000732
不成立,则令
Figure BDA00031499033200000733
对于满足
Figure BDA00031499033200000734
的所有信道,将其编号整合到集合
Figure BDA00031499033200000735
中;同时,将这些编号对应的
Figure BDA00031499033200000736
中的元素整合到集合
Figure BDA00031499033200000737
中,并给
Figure BDA00031499033200000738
中这些编号对应的元素赋值为
Figure BDA00031499033200000739
其中
Figure BDA00031499033200000740
是集合
Figure BDA0003149903320000081
的一个随机排列,
Figure BDA0003149903320000082
指该排列的第i个元素,而
Figure BDA0003149903320000083
是元素m在集合
Figure BDA0003149903320000084
中的编号;概括本步骤为
Figure BDA0003149903320000085
S2036.将所有排列行动
Figure BDA0003149903320000086
整合到集合
Figure BDA0003149903320000087
Figure BDA0003149903320000088
中随机挑选出k个排列行动构成排列集合
Figure BDA0003149903320000089
Figure BDA00031499033200000824
S2037.调用DDPG模块critic网络的评估网络,将
Figure BDA00031499033200000811
中所有的排列行动一一挑选出来,和
Figure BDA00031499033200000812
一起作为输入,得到最大输出值的排列行动记为沃尔珀丁格行动
Figure BDA00031499033200000813
S204.构建∈贪婪模块:
该模块的功能是基于沃尔珀丁格行动
Figure BDA00031499033200000814
生成行动a(t),采用∈贪婪算法,即a(t)以∈的概率等于
Figure BDA00031499033200000815
以1-∈的概率等于一个满足限制条件(1.3)的随机策略。
其中,所述步骤S3包括以下子步骤:
S301.初始化
Figure BDA00031499033200000816
C(1)=0和H(1)=0;
S302.得到
Figure BDA00031499033200000817
调用步骤S201得到
Figure BDA00031499033200000818
S303.令t=1;
S304.基于步骤S203和步骤S204,以
Figure BDA00031499033200000819
作为输入,得到输出a(t);
S305.计算代价
Figure BDA00031499033200000820
V表示能量使用效率和通信时延惩罚的重要性比值;
S306.基于用户请求和组播信道系数的统计信息模拟所有的qn(t)和hnmk(t+1);
S307.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure BDA00031499033200000821
调用步骤S201得到
Figure BDA00031499033200000822
S308.将
Figure BDA00031499033200000823
作为一个经历存入到经历缓存模块,如果该模块已存满了NR个经历,则用新经历替换掉最旧的经历;
S309.如果t<NR,令t=t+1并回到步骤S304,否则执行步骤S310;
S310.利用步骤S2022中的mini-batch模块从经历缓存模块中随机采样出N0个经历,记为
Figure BDA0003149903320000091
S311.采用决策梯度定理对S2021中构建的actor网络的评估网络进行参数更新,梯度值近似为N0个经历梯度值的平均值:
Figure BDA0003149903320000092
S312.采用随机梯度下降对S2021中构建的critic网络的评估网络进行参数更新,损失函数为N0个经历损失函数的平均值:
Figure BDA0003149903320000093
S313.对S2021中构建的目标网络进行参数软更新,其中为η更新率:
θπ=ηθπ+(1-η)θπ
θQ=ηθQ+(1-η)θQ
S314.如果S311-S313中的
Figure BDA0003149903320000094
θππ和θQQ都小于给定的误差精度
Figure BDA0003149903320000099
那么S2021中构建的actor网络和critic网络都已完成学习,停止S3;否则,执行步骤S315;
S315.令t=t+1并回到步骤S304。
其中,步骤S3完成后,S2021中构建的actor网络和critic网络都已完成学习,所述步骤S4包括以下子步骤:
S401.初始化
Figure BDA0003149903320000095
C(1)=0和H(1)=0;
S402.得到
Figure BDA0003149903320000096
调用步骤S201得到
Figure BDA0003149903320000097
S403.令t=1;
S404.基于步骤S203和步骤S204,以
Figure BDA0003149903320000098
作为输入,得到输出a(t);
S405.在基站处执行组播调度决定a(t):遍历a(t)的所有元素,如果第m个元素am(t)大于零,则在第t个时隙初始时基站将采用第m个信道进行第am(t)个内容的组播传输,该组播传输将会占用第m个信道Tam(t)m个时隙,并耗能
Figure BDA0003149903320000101
如果第m个元素am(t)等于零,在第t个时隙初始时基站不会在第m个信道上组播传输任一内容;
S406.完成组播调度决定a(t)的执行后,如果需要结束组播调度,则停止S4;如果要求继续执行组播调度任务,则基站进一步观测在第t个时隙内到达的新请求数量以及基站与发送这些请求的用户们之间的下行链路情况,并记录得到qn(t)和hnmk(t+1);
S407.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure BDA0003149903320000102
调用步骤S201得到
Figure BDA0003149903320000103
S408.令t=t+1并回到步骤S404。
本发明的有益效果是:本发明提供的组播调度方法,适用于带有时变约束条件和高维离散行动空间的马尔科夫决策过程,有效实现了异步组播通信下的组播调度。
附图说明
图1为本发明的方法流程图;
图2为离线学习模型的示意图;
图3为行动嵌入模块的工作原理示意图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,一种基于深度强化学习的组播调度方法,包括以下步骤:
S1.构建组播网络模型并确定组播调度的目标问题;
S2.构建组播网络的离线学习模型;
S3.进行离线训练得到成熟的模型;
S4.对训练得到的模型进行在线应用,实现组播调度。
其中,所述步骤S1包括:
设一个小区中,用户随机请求提前缓存在基站里的N种内容,基站采用M个可用信道施行这N个内容的组播传输;考虑时隙化的模型,组播传输的开始和结束都发生在时隙的初始或结尾,而不会发生在时隙中间;
在第t个时隙内,新到达的对第n个内容的请求数量为qn(t),这些请求到达后,并不会被基站安排信道立即执行组播传输,而是暂时存储在基站里并组成序列qn(t),即在第t个时隙初始时,未被服务的对第n个内容的请求序列;
Figure BDA0003149903320000111
其中,ln(t)表示在第t个时隙初始时算起,未被服务的对第n个内容的所有请求当中,最早达到的请求被延迟的时隙数;
将对第n个内容的请求延迟τ个时隙产生的瞬时时延惩罚定义为pn(τ),则第t个时隙,qn(t)内的请求会产生总瞬时时延惩罚
Figure BDA0003149903320000112
其中ln(t)定义为qn(t)序列的元素数量,一般等于距离第n个内容上一次组播的时隙数;如果第t个时隙内我们选择去组播第n个内容,则对第n个内容的请求序列qn(t)会被清空而不会产生任何瞬时时延惩罚;
定义bn(t)为第n个内容在第t个时隙的组播状态,如果至少一个信道在第t个时隙初始时开始组播第n个内容,其值为1;否则值为0;
Figure BDA0003149903320000113
其中am(t)为第t个时隙初始时,第m个信道的决定:如果值为0,代表该信道不进行任何内容的组播;如果值为非零整数n,代表该信道于第t个时隙初始时开启第n个内容的组播;
Figure BDA0003149903320000114
函数只有在输入为n的时候输出为1,否则输出为0;那么qn(t)里的请求产生的瞬时时延惩罚为
Figure BDA0003149903320000115
另外,如果第m个信道在第t个时隙初始时开启对第am(t)个内容的组播,即am(t)≠0,则该组播传输的单位时隙能耗为
Figure BDA0003149903320000116
其中
Figure BDA0003149903320000117
为在第m个信道上对第am(t)个内容进行组播的单位时隙能耗系数,
Figure BDA0003149903320000118
Figure BDA0003149903320000119
中所有请求对应的用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;定义Tnm为在第m个信道上对第n个内容进行组播需要的时隙数量,则组播的总能耗为
Figure BDA00031499033200001110
如果第m个信道在第t个时隙初始时不开启任何内容的组播,即am(t)=0,则不会消耗能量;所以,基于组播调度决定am(t),将第m个信道在第t个时隙组播传输的总能耗总结为:
Figure BDA0003149903320000121
组播调度的目标问题是折中优化对N个内容所有请求的平均瞬时时延惩罚以及M个信道所有组播传输的平均能耗,总结为
Figure BDA0003149903320000122
其中:
Figure BDA0003149903320000123
Figure BDA0003149903320000124
Figure BDA0003149903320000125
其中,V是能耗和瞬时时延惩罚的重要性比值;(1.1)和(1.2)中参数的动态更新规则由系统模型分析得到;
(1.1)解释了第n个内容的请求序列qn(t)的元素数量,即ln(t)的更新方法,讨论以下四种情况:
一,如果至少一个信道在第t个时隙初始时开始组播第n个内容且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=1,qn(t)=0,那么存储在qn(t)中的旧请求因被服务而清空,加上没有新请求,则第t+1个时隙时的请求序列qn+1(t)为空,其元素数量ln+1(t)为0;
二,如果同样至少一个信道在第t个时隙初始时开始组播第n个内容,但是有非零个新请求到达,即bn(t)=1,qn(t)>0,那么第t+1个时隙时,第n个内容的请求序列只包含了这些新请求,即qn+1(t)=[qn(t)],其长度ln+1(t)为1;
三,如果没有信道在第t个时隙初始时开始组播第n个内容,第n个内容的原请求序列qn(t)为空,即没有旧请求,而且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=0,qn(t)=0,ln(t)=0,那么第t+1个时隙时,第n个内容的请求序列qn+1(t)不包含任何请求,其元素数量ln+1(t)为0;
四,其他情况下,第t+1个时隙时,第n个内容的请求序列qn+1(t)由旧请求序列qn(t)和新到达的请求qn(t)构成,即qn+1(t)=[qn(t),qn(t-1),…,qn(t-ln(t))],其元素数量ln+1(t)为ln(t)+1;
(1.2)解释了N个内容的组播对M个信道占用情况的更新方法:首先cnm(t)被定义为在第t个时隙初始时,第n个内容的组播对第m个信道的占用情况:如果值为0,代表第m个信道当前没有进行第n个内容的组播传输;否则,代表第m个信道已经执行了第n个内容的组播传输cnm(t)个时隙;
讨论以下五种情况得到cnm(t)的更新规则:
一,如果第n个内容的组播传输只会占用第m个信道一个时隙,即Tnm=1,那么即使第m个信道在当前时隙开启了第n个内容的组播传输,下个时隙开始时,它都已经完成该组播传输并闲置出来,所以cnm(t+1)恒等于0;
二,如果第n个内容的组播传输占用第m个信道的时间多于一个时隙,即Tnm>1,而且第m个信道在当前时隙开启了第n个内容的组播传输,即am(t)=n,那么在下个时隙开始时,第m个信道已经执行了第n个内容的组播传输一个时隙,即cnm(t+1)=1;
三,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道当前没有执行对第n个内容的组播传输,即cnm(t)=0,那么下个时隙开始时,第m个信道依然没有执行着对第n个内容的组播传输,即cnm(t+1)=0;
四,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输已经执行了Tnm-1个时隙,即cnm(t)=Tnm-1,那么下个时隙开始时,第m个信道将结束对第n个内容的组播传输回到闲置状态,即cnm(t+1)=0;
五,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输的执行时间满足0<cnm(t)<Tnm-1,那么下个时隙开始时,第m个信道对第n个内容的组播传输的累计执行时间加一,即cnm(t+1)=cnm(t)+1;
(1.3)中
Figure BDA0003149903320000141
定义为第t个时隙初始时,第m个信道的占用状态:如果第m个信道正在进行任意一个内容的组播,其值为1;否则值为0:
Figure BDA0003149903320000142
这里
Figure BDA0003149903320000143
函数只有在输入为正的时候输出为1,否则输出为0;
所以第m个信道只能在
Figure BDA0003149903320000144
的条件下才能开启新的组播,即
Figure BDA0003149903320000145
对于所有的m和t恒成立;
上述问题是一个MDP问题,其包含
状态:
Figure BDA0003149903320000146
含义为在第t个时隙初始时,所有能够观测到的信息,也是马尔科夫决策过程的状态;
其中,
Figure BDA0003149903320000147
表示在第t个时隙初始时,未被服务的对N个内容的请求序列集合;
Figure BDA0003149903320000148
在第t个时隙初始时,N个内容对M个信道的占用情况;
Figure BDA0003149903320000149
在第t个时隙初始时,N个内容在M个信道上进行组播传输需要的信道参数;
Figure BDA00031499033200001410
表示在第t个时隙初始时,未被服务的对第n个内容的所有请求对应的发送用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;
行动:
Figure BDA00031499033200001411
其含义为在第t个时隙初始时,所有信道的决定,也是马尔科夫决策过程的行动;
状态转移:按照条件(1.1)和(1.2)进行;
代价:
Figure BDA00031499033200001412
并且MDP问题存在时变限制条件(1.3)和高维离散行动空间。
如2所示,所述步骤S2包括以下子步骤:
S201.搭建状态修正模块:
该模块把状态
Figure BDA0003149903320000151
中具有时变维度的Q(t)修正为具有固定维度的矩阵
Figure BDA0003149903320000152
其中M*是一个基于组播系统复杂度给定的常数;修正采用如下公式:
Figure BDA0003149903320000153
经过修正后,定义修正后的状态为
Figure BDA0003149903320000154
维度为M*N+2MN;
S202.搭建DDPG模块,DDPG模块包含actor-critic网络和经历回放模块,搭建过程包括:
S2021.搭建actor-critic网络,该网络包括actor网络和critic网络:
actor网络包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN,输出层节点数量为M,将两个网络包含的神经网络参数定义为θπ
Figure BDA0003149903320000155
critic网络也包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN+M,输出层节点数量为1,将两个网络包含的神经网络参数定义为θQ
Figure BDA0003149903320000156
S2022.搭建经历回放模块,该模块包含经历缓存模块和mini-batch模块;
经历缓存模块的基本储存单元为
Figure BDA0003149903320000157
并命名为经历,经历缓存模块最多存储NR个经历;
mini-batch模块的功能是从经历缓存模块中随机采样出N0个经历;
S203.如图3所示,构建行动嵌入模块,该模块调用DDPG模块的评估网络,基于修正后的状态
Figure BDA0003149903320000158
计算得到沃尔珀丁格行动
Figure BDA0003149903320000159
包括:
S2031.调用DDPG模块actor网络的评估网络,将
Figure BDA0003149903320000161
作为输入,输出记为
Figure BDA0003149903320000162
并命名为初始行动;
S2032.对
Figure BDA0003149903320000163
中所有元素按照四舍五入取整,得到的结果记为
Figure BDA0003149903320000164
Figure BDA0003149903320000165
的第m个元素为
Figure BDA0003149903320000166
Figure BDA0003149903320000167
S2033.对
Figure BDA0003149903320000168
进行第一次合理性修正并将修正的结果记为
Figure BDA0003149903320000169
Figure BDA00031499033200001610
的第m个元素为
Figure BDA00031499033200001611
Figure BDA00031499033200001612
S2034.对
Figure BDA00031499033200001613
进行第二次合理性修正并将修正的结果记为
Figure BDA00031499033200001614
Figure BDA00031499033200001615
的第m个元素为
Figure BDA00031499033200001616
如果
Figure BDA00031499033200001617
成立,则
Figure BDA00031499033200001618
满足限制条件(1.3),即
Figure BDA00031499033200001619
此时令
Figure BDA00031499033200001620
如果
Figure BDA00031499033200001621
不成立,令
Figure BDA00031499033200001622
可知
Figure BDA00031499033200001623
满足限制条件(1.3),将其命名为候选行动;概括本步骤为
Figure BDA00031499033200001624
S2035.基于
Figure BDA00031499033200001625
找到更多满足限制条件的行动,并命名为排列行动
Figure BDA00031499033200001626
Figure BDA00031499033200001627
的第m个元素为
Figure BDA00031499033200001628
如果
Figure BDA00031499033200001629
不成立,则令
Figure BDA00031499033200001630
对于满足
Figure BDA00031499033200001631
的所有信道,将其编号整合到集合
Figure BDA00031499033200001632
中;同时,将这些编号对应的
Figure BDA00031499033200001633
中的元素整合到集合
Figure BDA00031499033200001634
中,并给
Figure BDA00031499033200001635
中这些编号对应的元素赋值为
Figure BDA00031499033200001636
其中
Figure BDA00031499033200001637
是集合(t)的一个随机排列,
Figure BDA00031499033200001638
指该排列的第i个元素,而
Figure BDA00031499033200001639
是元素m在集合
Figure BDA00031499033200001640
中的编号;概括本步骤为
Figure BDA00031499033200001641
S2036.将所有排列行动
Figure BDA00031499033200001642
整合到集合
Figure BDA00031499033200001643
Figure BDA00031499033200001644
中随机挑选出k个排列行动构成排列集合
Figure BDA00031499033200001645
Figure BDA00031499033200001646
S2037.调用DDPG模块critic网络的评估网络,将
Figure BDA00031499033200001647
中所有的排列行动一一挑选出来,和
Figure BDA0003149903320000171
一起作为输入,得到最大输出值的排列行动记为沃尔珀丁格行动
Figure BDA0003149903320000172
S204.构建∈贪婪模块:
该模块的功能是基于沃尔珀丁格行动
Figure BDA0003149903320000173
生成行动a(t),采用∈贪婪算法,即a(t)以∈的概率等于
Figure BDA0003149903320000174
以1-∈的概率等于一个满足限制条件(1.3)的随机策略。
其中,所述步骤S3包括以下子步骤:
S301.初始化
Figure BDA0003149903320000175
C(1)=0和H(1)=0;
S302.得到
Figure BDA0003149903320000176
调用步骤S201得到
Figure BDA0003149903320000177
S303.令t=1;
S304.基于步骤S203和步骤S204,以
Figure BDA0003149903320000178
作为输入,得到输出a(t);
S305.计算代价
Figure BDA0003149903320000179
S306.基于用户请求和组播信道系数的统计信息模拟所有的qn(t)和hnmk(t+1);
S307.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure BDA00031499033200001710
调用步骤S201得到
Figure BDA00031499033200001711
S308.将
Figure BDA00031499033200001712
作为一个经历存入到经历缓存模块,如果该模块已存满了NR个经历,则用新经历替换掉最旧的经历;
S309.如果t<NR,令t=t+1并回到步骤S304,否则执行步骤S310;
S310.利用步骤S2022中的mini-batch模块从经历缓存模块中随机采样出N0个经历,记为
Figure BDA00031499033200001713
S311.采用决策梯度定理对S2021中构建的actor网络的评估网络进行参数更新,梯度值近似为N0个经历梯度值的平均值:
Figure BDA00031499033200001714
S312.采用随机梯度下降对S2021中构建的critic网络的评估网络进行参数更新,损失函数为N0个经历损失函数的平均值:
Figure BDA0003149903320000181
S313.对S2021中构建的目标网络进行参数软更新,其中为η更新率:
θπ=ηθπ+(1-η)θπ
θQ=ηθQ+(1-η)θQ
S314.如果S311-S313中的
Figure BDA0003149903320000182
L(θQ),θππ和θQQ都小于给定的误差精度
Figure BDA00031499033200001811
那么S2021中构建的actor网络和critic网络都已完成学习,停止S3;否则,执行步骤S315;
S315.令t=t+1并回到步骤S304。
其中,步骤S3完成后,S2021中构建的actor网络和critic网络都已完成学习,所述步骤S4包括以下子步骤:
S401.初始化
Figure BDA0003149903320000183
C(1)=0和H(1)=0;
S402.得到
Figure BDA0003149903320000184
调用步骤S201得到
Figure BDA0003149903320000185
S403.令t=1;
S404.基于步骤S203和步骤S204,以
Figure BDA0003149903320000186
作为输入,得到输出a(t);
S405.在基站处执行组播调度决定a(t):遍历a(t)的所有元素,如果第m个元素am(t)大于零,则在第t个时隙初始时基站将采用第m个信道进行第am(t)个内容的组播传输,该组播传输将会占用第m个信道
Figure BDA0003149903320000187
个时隙,并耗能
Figure BDA0003149903320000188
如果第m个元素am(t)等于零,在第t个时隙初始时基站不会在第m个信道上组播传输任一内容;
S406.完成组播调度决定a(t)的执行后,如果需要结束组播调度,则停止S4;如果要求继续执行组播调度任务,则基站进一步观测在第t个时隙内到达的新请求数量以及基站与发送这些请求的用户们之间的下行链路情况,并记录得到qn(t)和hnmk(t+1);
S407.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure BDA0003149903320000189
调用步骤S201得到
Figure BDA00031499033200001810
S408.令t=t+1并回到步骤S404。
上述说明示出并描述了本发明的优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

Claims (5)

1.一种基于深度强化学习的组播调度方法,其特征在于:包括以下步骤:
S1.构建组播网络模型并确定组播调度的目标问题;
S2.构建组播网络的离线学习模型;
S3.进行离线训练得到成熟的模型;
S4.对训练得到的模型进行在线应用,实现组播调度。
2.根据权利要求1所述的一种基于深度强化学习的组播调度方法,其特征在于:所述步骤S1包括:
设一个小区中,用户随机请求提前缓存在基站里的N种内容,基站采用M个可用信道施行这N个内容的组播传输;考虑时隙化的模型,组播传输的开始和结束都发生在时隙的初始或结尾,而不会发生在时隙中间;
在第t个时隙内,新到达的对第n个内容的请求数量为qn(t),这些请求到达后,并不会被基站安排信道立即执行组播传输,而是暂时存储在基站里并组成序列qn(t),即在第t个时隙初始时,未被服务的对第n个内容的请求序列;
Figure FDA0003149903310000011
其中,ln(t)表示在第t个时隙初始时算起,未被服务的对第n个内容的所有请求当中,最早达到的请求被延迟的时隙数;
将对第n个内容的请求延迟τ个时隙产生的瞬时时延惩罚定义为pn(τ),则第t个时隙,qn(t)内的请求会产生总瞬时时延惩罚
Figure FDA0003149903310000012
如果第t个时隙内我们选择去组播第n个内容,则对第n个内容的请求序列qn(t)会被清空而不会产生任何瞬时时延惩罚;
定义bn(t)为第n个内容在第t个时隙的组播状态,如果至少一个信道在第t个时隙初始时开始组播第n个内容,其值为1;否则值为0;
Figure FDA0003149903310000013
其中am(t)为第t个时隙初始时,第m个信道的决定:如果值为0,代表该信道不进行任何内容的组播;如果值为非零整数n,代表该信道于第t个时隙初始时开启第n个内容的组播;
Figure FDA0003149903310000014
函数只有在输入为n的时候输出为1,否则输出为0;那么qn(t)里的请求产生的瞬时时延惩罚为
Figure FDA0003149903310000015
另外,如果第m个信道在第t个时隙初始时开启对第am(t)个内容的组播,即am(t)≠0,则该组播传输的单位时隙能耗为
Figure FDA0003149903310000021
其中
Figure FDA0003149903310000022
为在第m个信道上对第am(t)个内容进行组播的单位时隙能耗系数,
Figure FDA0003149903310000023
Figure FDA0003149903310000024
中所有请求对应的用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;定义Tnm为在第m个信道上对第n个内容进行组播需要的时隙数量,则组播的总能耗为
Figure FDA0003149903310000025
如果第m个信道在第t个时隙初始时不开启任何内容的组播,即am(t)=0,则不会消耗能量;所以,基于组播调度决定am(t),将第m个信道在第t个时隙组播传输的总能耗总结为
Figure FDA0003149903310000026
组播调度的目标问题是折中优化对N个内容所有请求的平均瞬时时延惩罚以及M个信道所有组播传输的平均能耗,总结为
Figure FDA0003149903310000027
s.t.(1.1),(1.2),(1.3)
其中:
Figure FDA0003149903310000028
Figure FDA0003149903310000029
Figure FDA00031499033100000210
其中,V是能耗和瞬时时延惩罚的重要性比值;(1.1)和(1.2)中参数的动态更新规则由系统模型分析得到:
(1.1)解释了第n个内容的请求序列qn(t)的元素数量,即ln(t)的更新方法,讨论以下四种情况:
一,如果至少一个信道在第t个时隙初始时开始组播第n个内容且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=1,qn(t)=0,那么存储在qn(t)中的旧请求因被服务而清空,加上没有新请求,则第t+1个时隙时的请求序列qn+1(t)为空,其元素数量ln+1(t)为0;
二,如果同样至少一个信道在第t个时隙初始时开始组播第n个内容,但是有非零个新请求到达,即bn(t)=1,qn(t)>0,那么第t+1个时隙时,第n个内容的请求序列只包含了这些新请求,即qn+1(t)=[qn(t)],其长度ln+1(t)为1;
三,如果没有信道在第t个时隙初始时开始组播第n个内容,第n个内容的原请求序列qn(t)为空,即没有旧请求,而且第t个时隙内没有到达对第n个内容的新请求,即bn(t)=0,qn(t)=0,ln(t)=0,那么第t+1个时隙时,第n个内容的请求序列qn+1(t)不包含任何请求,其元素数量ln+1(t)为0;
四,其他情况下,第t+1个时隙时,第n个内容的请求序列qn+1(t)由旧请求序列qn(t)和新到达的请求qn(t)构成,即qn+1(t)=[qn(t),qn(t-1),…,qn(t-ln(t))],其元素数量ln+1(t)为ln(t)+1;
(1.2)解释了N个内容的组播对M个信道占用情况的更新方法:首先cnm(t)被定义为在第t个时隙初始时,第n个内容的组播对第m个信道的占用情况:如果值为0,代表第m个信道当前没有进行第n个内容的组播传输;否则,代表第m个信道已经执行了第n个内容的组播传输cnm(t)个时隙;
讨论以下五种情况得到cnm(t)的更新规则:
一,如果第n个内容的组播传输只会占用第m个信道一个时隙,即Tnm=1,那么即使第m个信道在当前时隙开启了第n个内容的组播传输,下个时隙开始时,它都已经完成该组播传输并闲置出来,所以cnm(t+1)恒等于0;
二,如果第n个内容的组播传输占用第m个信道的时间多于一个时隙,即Tnm>1,而且第m个信道在当前时隙开启了第n个内容的组播传输,即am(t)=n,那么在下个时隙开始时,第m个信道已经执行了第n个内容的组播传输一个时隙,即cnm(t+1)=1;
三,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道当前没有执行对第n个内容的组播传输,即cnm(t)=0,那么下个时隙开始时,第m个信道依然没有执行着对第n个内容的组播传输,即cnm(t+1)=0;
四,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输已经执行了Tnm-1个时隙,即cnm(t)=Tnm-1,那么下个时隙开始时,第m个信道将结束对第n个内容的组播传输回到闲置状态,即cnm(t+1)=0;
五,如果Tnm>1,第m个信道在当前时隙没有开启对第n个内容的组播传输,即am≠n,而且第m个信道对第n个内容的组播传输的执行时间满足0<cnm(t)<Tnm-1,那么下个时隙开始时,第m个信道对第n个内容的组播传输的累计执行时间加一,即cnm(t+1)=cnm(t)+1;
(1.3)中
Figure FDA0003149903310000041
定义为第t个时隙初始时,第m个信道的占用状态:如果第m个信道正在进行任意一个内容的组播,其值为1;否则值为0:
Figure FDA0003149903310000042
这里
Figure FDA0003149903310000043
函数只有在输入为正的时候输出为1,否则输出为0;
所以第m个信道只能在
Figure FDA0003149903310000044
的条件下才能开启新的组播,即
Figure FDA0003149903310000045
对于所有的m和t恒成立;
上述问题是一个MDP问题,其包含
状态:
Figure FDA0003149903310000046
含义为在第t个时隙初始时,所有能够观测到的信息,也是马尔科夫决策过程的状态;
其中,
Figure FDA0003149903310000047
表示在第t个时隙初始时,未被服务的对N个内容的请求序列集合;
Figure FDA0003149903310000051
在第t个时隙初始时,N个内容对M个信道的占用情况;
Figure FDA0003149903310000052
在第t个时隙初始时,N个内容在M个信道上进行组播传输需要的信道参数;
Figure FDA0003149903310000053
表示在第t个时隙初始时,未被服务的对第n个内容的所有请求对应的发送用户群体,与基站之间采用第m个信道进行下行组播传输时最差的信道系数;
hnmk(t)表示在第t个时隙初始时,未被服务的对第n个内容的所有请求当中,第k个请求的发送用户与基站之间采用第m个信道进行下行组播传输时的信道系数;
行动:
Figure FDA0003149903310000054
其含义为在第t个时隙初始时,所有信道的决定,也是马尔科夫决策过程的行动;
状态转移:按照条件(1.1)和(1.2)进行;
代价:
Figure FDA0003149903310000055
并且MDP问题存在时变限制条件(1.3)和高维离散行动空间。
3.根据权利要求1所述的一种基于深度强化学习的组播调度方法,其特征在于:所述步骤S2包括以下子步骤:
S201.搭建状态修正模块:
该模块把状态
Figure FDA0003149903310000056
中具有时变维度的Q(t)修正为具有固定维度的矩阵
Figure FDA0003149903310000057
其中M*是一个基于组播系统复杂度给定的常数;修正采用如下公式:
Figure FDA0003149903310000058
经过修正后,定义修正后的状态为
Figure FDA0003149903310000059
维度为M*N+2MN;
S202.搭建DDPG模块,DDPG模块包含actor-critic网络和经历回放模块,搭建过程包括:
S2021.搭建actor-critic网络,该网络包括actor网络和critic网络:
actor网络包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN,输出层节点数量为M,将两个网络包含的神经网络参数定义为θπ
Figure FDA0003149903310000061
critic网络也包含一个评估网络和一个目标网络,它们都是包含若干隐藏层的全连接神经网络,隐藏层数量,节点以及激活函数的选择都基于组播系统复杂度预先给定,输入层节点数量为M*N+2MN+M,输出层节点数量为1,将两个网络包含的神经网络参数定义为θQ
Figure FDA0003149903310000062
S2022.搭建经历回放模块,该模块包含经历缓存模块和mini-batch模块;
经历缓存模块的基本储存单元为
Figure FDA0003149903310000063
并命名为经历,经历缓存模块最多存储NR个经历;
mini-batch模块的功能是从经历缓存模块中随机采样出N0个经历;
S203.构建行动嵌入模块,该模块调用DDPG模块的评估网络,基于修正后的状态
Figure FDA0003149903310000064
计算得到沃尔珀丁格行动
Figure FDA0003149903310000065
包括:
S2031.调用DDPG模块actor网络的评估网络,将
Figure FDA0003149903310000066
作为输入,输出记为
Figure FDA0003149903310000067
并命名为初始行动;
S2032.对
Figure FDA0003149903310000068
中所有元素按照四舍五入取整,得到的结果记为
Figure FDA0003149903310000069
Figure FDA00031499033100000610
的第m个元素为
Figure FDA00031499033100000611
Figure FDA00031499033100000612
S2033.对
Figure FDA00031499033100000613
进行第一次合理性修正并将修正的结果记为
Figure FDA00031499033100000614
Figure FDA00031499033100000615
的第m个元素为
Figure FDA00031499033100000616
Figure FDA00031499033100000617
S2034.对
Figure FDA00031499033100000618
进行第二次合理性修正并将修正的结果记为
Figure FDA00031499033100000619
Figure FDA00031499033100000620
的第m个元素为
Figure FDA00031499033100000621
如果
Figure FDA00031499033100000622
成立,则
Figure FDA00031499033100000623
满足限制条件(1.3),即
Figure FDA00031499033100000624
此时令
Figure FDA00031499033100000625
如果
Figure FDA00031499033100000626
不成立,令
Figure FDA00031499033100000627
可知
Figure FDA00031499033100000628
满足限制条件(1.3),将其命名为候选行动;概括本步骤为
Figure FDA00031499033100000629
S2035.基于
Figure FDA0003149903310000071
找到更多满足限制条件的行动,并命名为排列行动
Figure FDA0003149903310000072
Figure FDA0003149903310000073
的第m个元素为
Figure FDA0003149903310000074
如果
Figure FDA0003149903310000075
不成立,则令
Figure FDA0003149903310000076
对于满足
Figure FDA0003149903310000077
的所有信道,将其编号整合到集合
Figure FDA0003149903310000078
中;同时,将这些编号对应的
Figure FDA0003149903310000079
中的元素整合到集合
Figure FDA00031499033100000710
中,并给
Figure FDA00031499033100000711
中这些编号对应的元素赋值为
Figure FDA00031499033100000712
其中
Figure FDA00031499033100000713
是集合
Figure FDA00031499033100000714
的一个随机排列,
Figure FDA00031499033100000715
指该排列的第i个元素,而
Figure FDA00031499033100000716
是元素m在集合
Figure FDA00031499033100000717
中的编号;概括本步骤为
Figure FDA00031499033100000718
S2036.将所有排列行动
Figure FDA00031499033100000719
整合到集合
Figure FDA00031499033100000720
Figure FDA00031499033100000721
中随机挑选出k个排列行动构成排列集合
Figure FDA00031499033100000722
Figure FDA00031499033100000723
且i,j=1,2,…,k};
S2037.调用DDPG模块critic网络的评估网络,将
Figure FDA00031499033100000724
中所有的排列行动一一挑选出来,和
Figure FDA00031499033100000725
一起作为输入,得到最大输出值的排列行动记为沃尔珀丁格行动
Figure FDA00031499033100000726
S204.构建∈贪婪模块:
该模块的功能是基于沃尔珀丁格行动
Figure FDA00031499033100000727
生成行动a(t),采用∈贪婪算法,即a(t)以∈的概率等于
Figure FDA00031499033100000728
以1-∈的概率等于一个满足限制条件(1.3)的随机策略。
4.根据权利要求1所述的一种基于深度强化学习的组播调度方法,其特征在于:所述步骤S3包括以下子步骤:
S301.初始化
Figure FDA00031499033100000729
C(1)=0和H(1)=0;
S302.得到
Figure FDA00031499033100000730
调用步骤S201得到
Figure FDA00031499033100000731
S303.令t=1;
S304.基于步骤S203和步骤S204,以
Figure FDA00031499033100000732
作为输入,得到输出a(t);
S305.计算代价
Figure FDA00031499033100000733
S306.基于用户请求和组播信道系数的统计信息模拟所有的qn(t)和hnmk(t+1);
S307.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure FDA0003149903310000081
调用步骤S201得到
Figure FDA0003149903310000082
S308.将
Figure FDA0003149903310000083
作为一个经历存入到经历缓存模块,如果该模块已存满了NR个经历,则用新经历替换掉最旧的经历;
S309.如果t<NR,令t=t+1并回到步骤S304,否则执行步骤S310;
S310.利用步骤S2022中的mini-batch模块从经历缓存模块中随机采样出N0个经历,记为
Figure FDA0003149903310000084
S311.采用决策梯度定理对S2021中构建的actor网络的评估网络进行参数更新,梯度值近似为N0个经历梯度值的平均值:
Figure FDA0003149903310000085
S312.采用随机梯度下降对S2021中构建的critic网络的评估网络进行参数更新,损失函数为N0个经历损失函数的平均值:
Figure FDA0003149903310000086
S313.对S2021中构建的目标网络进行参数软更新,其中为η更新率:
θπ=ηθπ+(1-η)θπ
Figure FDA0003149903310000087
S314.如果S311-S313中的
Figure FDA0003149903310000088
θππ和θQQ都小于给定的误差精度
Figure FDA0003149903310000089
那么S2021中构建的actor网络和critic网络都已完成学习,停止S3;否则,执行步骤S315;
S315.令t=t+1并回到步骤S304。
5.根据权利要求1所述的一种基于深度强化学习的组播调度方法,其特征在于:步骤S3完成后,S2021中构建的actor网络和critic网络都已完成学习,所述步骤S4包括以下子步骤:
S401.初始化
Figure FDA00031499033100000810
C(1)=0和H(1)=0;
S402.得到
Figure FDA0003149903310000091
调用步骤S201得到
Figure FDA0003149903310000092
S403.令t=1;
S404.基于步骤S203和步骤S204,以
Figure FDA0003149903310000093
作为输入,得到输出a(t);
S405.在基站处执行组播调度决定a(t):遍历a(t)的所有元素,如果第m个元素am(t)大于零,则在第t个时隙初始时基站将采用第m个信道进行第am(t)个内容的组播传输,该组播传输将会占用第m个信道
Figure FDA0003149903310000094
个时隙,并耗能
Figure FDA0003149903310000095
如果第m个元素am(t)等于零,在第t个时隙初始时基站不会在第m个信道上组播传输任一内容;
S406.完成组播调度决定a(t)的执行后,如果需要结束组播调度,则停止S4;如果要求继续执行组播调度任务,则基站进一步观测在第t个时隙内到达的新请求数量以及基站与发送这些请求的用户们之间的下行链路情况,并记录得到qn(t)和hnmk(t+1);
S407.基于条件(1.1)和(1.2)得到Q(t+1)和C(t+1),基于hnmk(t+1)得到H(t+1),进而得到
Figure FDA0003149903310000096
调用步骤S201得到
Figure FDA0003149903310000097
S408.令t=t+1并回到步骤S404。
CN202110761307.3A 2021-07-06 2021-07-06 一种基于深度强化学习的组播调度方法 Active CN113490157B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110761307.3A CN113490157B (zh) 2021-07-06 2021-07-06 一种基于深度强化学习的组播调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110761307.3A CN113490157B (zh) 2021-07-06 2021-07-06 一种基于深度强化学习的组播调度方法

Publications (2)

Publication Number Publication Date
CN113490157A true CN113490157A (zh) 2021-10-08
CN113490157B CN113490157B (zh) 2022-02-25

Family

ID=77941157

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110761307.3A Active CN113490157B (zh) 2021-07-06 2021-07-06 一种基于深度强化学习的组播调度方法

Country Status (1)

Country Link
CN (1) CN113490157B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500407A (zh) * 2022-01-13 2022-05-13 厦门大学 一种用于单组播混传的交换网络的调度方法
CN114915665A (zh) * 2022-07-13 2022-08-16 香港中文大学(深圳) 一种基于分层策略的异构任务调度方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108810651A (zh) * 2018-05-09 2018-11-13 太原科技大学 基于深度压缩感知网络的无线视频组播方法
CN109272047A (zh) * 2018-09-27 2019-01-25 山东理工大学 一种满足光组播资源预测的隐马尔科夫模型状态构造与参数训练方法
CN110662238A (zh) * 2019-10-24 2020-01-07 南京大学 一种针对边缘网络下突发请求的强化学习调度方法及设备
US20200015101A1 (en) * 2017-02-16 2020-01-09 Alcatel-Lucent Ireland Ltd. Methods And Systems For Network Self-Optimization Using Deep Learning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200015101A1 (en) * 2017-02-16 2020-01-09 Alcatel-Lucent Ireland Ltd. Methods And Systems For Network Self-Optimization Using Deep Learning
CN108810651A (zh) * 2018-05-09 2018-11-13 太原科技大学 基于深度压缩感知网络的无线视频组播方法
CN109272047A (zh) * 2018-09-27 2019-01-25 山东理工大学 一种满足光组播资源预测的隐马尔科夫模型状态构造与参数训练方法
CN110662238A (zh) * 2019-10-24 2020-01-07 南京大学 一种针对边缘网络下突发请求的强化学习调度方法及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500407A (zh) * 2022-01-13 2022-05-13 厦门大学 一种用于单组播混传的交换网络的调度方法
CN114500407B (zh) * 2022-01-13 2023-10-27 厦门大学 一种用于单组播混传的交换网络的调度方法
CN114915665A (zh) * 2022-07-13 2022-08-16 香港中文大学(深圳) 一种基于分层策略的异构任务调度方法
CN114915665B (zh) * 2022-07-13 2022-10-21 香港中文大学(深圳) 一种基于分层策略的异构任务调度方法

Also Published As

Publication number Publication date
CN113490157B (zh) 2022-02-25

Similar Documents

Publication Publication Date Title
CN113254197B (zh) 一种基于深度强化学习的网络资源调度方法及系统
CN113490157B (zh) 一种基于深度强化学习的组播调度方法
Lee et al. Adaptive transmission scheduling in wireless networks for asynchronous federated learning
Zhang et al. Deep learning for wireless coded caching with unknown and time-variant content popularity
CN106453608B (zh) 一种基于云端的移动应用的后台请求自适应调度算法
US7606250B2 (en) Assigning resources to items such as processing contexts for processing packets
CN111628855B (zh) 基于深度强化学习的工业5g动态多优先级多接入方法
CN111970047A (zh) 一种基于强化学习的leo卫星信道分配方法
US20060029080A1 (en) Using burst tolerance values in time-based schedules
CN112261725B (zh) 一种基于深度强化学习的数据包传输智能决策方法
US7843940B2 (en) Filling token buckets of schedule entries
CN112911408B (zh) 基于深度学习的智能视频码率调整及带宽分配方法
CA2229577A1 (en) Method and apparatus for controlling traffic flows in a packet-switched network in order to guarantee service performance
US7289443B1 (en) Slow-start packet scheduling particularly applicable to systems including a non-blocking switching fabric and homogeneous or heterogeneous line card interfaces
CN111740925A (zh) 一种基于深度强化学习的Coflow调度方法
CN114169543A (zh) 一种基于模型陈旧性与用户参与度感知的联邦学习算法
CN116321307A (zh) 一种无蜂窝网络中基于深度强化学习的双向缓存放置方法
EP1638273B1 (en) Scheduling using quantum and deficit values
CN111163364B (zh) 视频播放网站对发往基站的信号码率实施均衡控制的方法
CN110830654B (zh) 一种播放语音消息的方法及设备
US20060140192A1 (en) Flexible mesh structure for hierarchical scheduling
CN115066036A (zh) 一种基于多智能体协作的多基站排队式前导码分配方法
Karakaya et al. Evaluation of a broadcast scheduling algorithm
US20060153243A1 (en) Scheduling eligible entries using an approximated finish delay identified for an entry based on an associated speed group
Jiang et al. Scheduling algorithms for a data broadcast system: Minimizing variance of the response time

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant