1.一种边缘计算网络中基于学习的低延时任务调度方法,多个用户所持有的移动智能终端通过无线接入点与边缘计算网络中的多资源服务器(EC server)集群连接,其特征在于,每次只保留N个任务到达的系统状态,而N个之外的任务信息放在积压部分中只对任务数量计数,在每个时间步,对N个任务进行调度,允许智能体Agent在每个时间步执行多个动作a,在每个时间步t,时间被冻结,直到选择无效的动作或者是尝试调度的不合适的任务,时间才会进行,集群图像移动一步,每进行一个时间步,就相当于Agent进行一次有效的决策,然后Agent观察状态转换,也就是任务被调度到集群图像中的适当位置;在每个时间步设置奖励为 其
中,J是当前系统中的任务集(被调度或是等待服务),Ti是任务i的理想完成时间,Agent在时间步中没有得到任何中间决策的奖励,设定折扣因子为1,随着时间的累积奖励与负的总和任务减速相符合,累计奖励最大就是最小化平均任务减速取负,将状态到动作的映射表示为一个神经网络,将图像的集合作为输入,输出所有可能动作的值函数,在一个情节化episode的环境中训练策略网络,在每个episode中固定数量的任务到达,根据策略进行任务调度,当所有任务完成调度时,情节终止。
2.如权利要求1所述的一种边缘计算网络中基于学习的低延时任务调度方法,其特征在于,将任务调度问题被转化为一个学习问题,进一步包括:形式化强化学习将其表示为马尔可夫决策过程(MDP),假设Agent位于一个环境中,该环境由某个状态s表示,Agent可以在环境中执行某些操作,然后接收奖励,并将环境转换为新的状态,转换的经验表示为s,a,r,s′,分别为状态、动作、奖励和下一状态,这些状态集、动作集以及转换规则组成了一个MDP;
这个过程的一个episode形成一个有限序列的状态,行为和奖励:
{s0,a0,r0,s1,a1,r1,…,st,at,rt,…,sn-1,an-1,rn-1,}
其中,st为当前状态,at为当前行为,rt为执行行为后的奖励,st+1为下一状态;利用强化学习值迭代的算法q-learning,将State与Action构建成一张Q-table来存储Q值,然后根据Q值来选取动作获得较大的收益,其更新公式为:其中,s和a时当前状态和当前状态下执行的动作,r为执行a后获得的奖励,s′为下一个状态,a′为下一个状态要执行的动作,在更新的过程中,引入学习速率α,控制先前的Q值和新的Q值之间有多少差异被保留,参数γ则用来对奖励进行折扣,当γ接近0时,关注短期利益,当γ接近1时,开始关注长期利益;Q(s′,a′)是下一个状态s′中的最大Q值,r+γmaxa′Q(s′,a′)是Q(s,a)的期望值;Q*(s,a)表示在状态s时执行动作a在未来获得的奖励折扣,一旦有了Q*(s,a),就可以选择未来获得折扣奖励最大的动作a。
3.如权利要求2所述的一种边缘计算网络中基于学习的低延时任务调度方法,其特征在于,状态到动作的映射表示为一个神经网络,把Q-table更新转化为一函数拟合问题,通过拟合一个函数function来代替Q-table产生Q值,使得相近的状态得到相近的输出动作;
利用深度神经网络对复杂特征的提取,用一个深度卷积神经网络表示这个Q值函数,参数为θ,通过更新参数θ使Q函数逼近最优Q值:Q(s,a;θ)≈Q′(s,a)
其中,θ是网络参数。
4.如权利要求3所述的一种边缘计算网络中基于学习的低延时任务调度方法,其特征在于,训练Q网络,确定网络参数θ;首先通过Q-Learning使用reward来构造标签TargetQ,在Q值中使用均方差mean-square error来定义目标函数objective function,也就是Q网络训练的损失函数为:L(θ)=E[(TargetQ-Q(s,a;θ))2]
其中,θ是网络参数,目标值为:
其中s′,a′即下一状态和动作,使用Q-Learning要更新的Q值作为目标值,求损失函数L(θ)关于参数θ的梯度,使用梯度下降法来更新参数θ,从而得到最优Q值,梯度下降法为:为了解决相关性及非静态分布问题,利用了经验回放训练强化学习模型把每个时间步Agent与环境交互得到的转移样本(st,at,rt,st+1)储存到回放记忆单元,要训练时就随机拿出一些数据(minibatch)来训练;
为了降低了当前值和目标值的相关性,提高算法稳定性,独立设置目标网络来单独处理时间差分算法中的TD误差,使用一个卷积神经网络CNN(MainNet)产生当前Q值,使用另外一个卷积神经网络CNN(TargetNet)产生Target Q值,具体地,Q(s,a;θ)表示当前网络MainNet的输出,用来评估当前状态动作对的值函数;Q(s,a;θ-)表示TargetNet的输出,代入上面求Target Q值的公式中得到目标值,根据所述损失函数更新MainNet的参数,每经过C轮迭代,将MainNet的参数复制给Target Net,此时值函数的更新变为:其中Q(s,a;θ)表示当前网络MainNet的输出,Q(s,a;θ-)表示TargetNet的输出。