一种基于移动边缘计算的依赖型任务卸载方法及装置

文档序号:25543290发布日期:2021-06-18 20:40阅读:来源:国知局

技术特征:

1.一种基于移动边缘计算的依赖型任务卸载方法,其特征是,包括以下过程:

将移动终端上的应用形式化为多个任务组成的工作流,并用dag图表示;

遍历应用的dag图,依据遍历的深度将工作流中所有任务划分为不同调度层并确定各调度层的执行顺序;

为每个调度层内的各任务分配不同的优先级,依据任务的优先级顺序调整调度层内各任务执行顺序;

计算工作流中各任务的执行代价;

以应用的所有任务执行代价之和最小化为目标,按照任务执行顺序依次确定每个任务的卸载决策。

2.根据权利要求1所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述依据遍历的深度将工作流中所有任务划分为不同调度层,包括:

寻找应用工作流的入口任务;

从入口任务开始,采用广度优先算法遍历应用的dag图,遍历的深度为每个任务分配调度编号,具有相同调度编号的任务划分为一个调度层。

3.根据权利要求2所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述寻找应用工作流的入口任务时,当存在多个入口任务时,加入虚拟任务节点,将虚拟任务节点与原多个入口任务节点连接形成新的dag图,以虚拟任务节点作为工作流的入口任务。

4.根据权利要求1所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述为各任务分配不同的优先级,包括:

定义调度层中不同任务的优先级为计算平均计算数据量的价值,公式为:

其中,表示任务vi的重要度,使用点中心度来衡量,wi表示任务vi的计算数据量。

5.根据权利要求4所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述依据任务的优先级顺序调整调度层内各任务执行顺序,包括:

将任务的优先级从大到小顺序作为调度层内各任务执行顺序。

6.根据权利要求1所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,计算工作流中各任务的执行代价,包括:

任务vi的完成时间由三部分组成:任务的卸载延迟tilat,任务计算时间tiexe和依赖任务间的数据传输时间ti',i,假设任务vi'是任务vi的前驱任务,卸载延迟tilat的计算公式为:

任务的计算时间tiexe表示为:

其中,wi是任务vi的计算数据量;

基于任务vi'和任务vi的卸载不同情况,依赖任务间的数据传输时间ti',i可以表示为:

其中,di',i表示任务间的传输数据量;stn表示卸载决策的不同情况:

其中,表示异或二进制运算,sq()和sz()函数分别返回卸载决策对应计算资源的类型值q和编号值z,当q=0时表示移动终端计算资源,当q=1时表示边缘端服务器计算资源,当q=2时表示云端服务器计算资源;st1表示任务vi'与任务vi卸载到不同的边缘服务器,st2表示任务vi'与任务vi卸载到不同的云服务器,st3表示任务vi'与任务vi分别卸载到移动终端和边缘服务器,st4表示任务vi'与任务vi分别卸载到移动终端和云服务器或分别卸载到边缘服务器和云服务器,st5表示任务vi'与任务vi的执行位置完全相同时用;

任务的完成时间表示为efti=esti+tiexe,令efti表示任务vi的最早完成时间,esti为任务vi的最早开始时间,tiexe为任务vi的计算时间;其中,表示当任务vi决定卸载时资源服务器的最早空闲时间,pre(vi)表示任务vi的前驱任务,efti表示任务vi的最早完成时间;

移动终端的任务能耗由两部分组成:执行能耗和传输能耗,对于执行能耗,由于移动终端包括执行和空闲两个状态,所以执行能耗可以表示为:

其中,tiwait为任务vi等待时间;

传输能耗只有当卸载决策与移动终端即本地执行相关时才会产生,当任务vi'和任务vi其中一个任务在本地执行,另外一个任务卸载所产生的能耗表示为:

因此,任务vi总的能耗可以表示为:

从而将任务vi的执行代价定义为:

其中,til分别是移动终端应用任务vi在移动终端上计算时的完成时间和能耗;ξ是衡量应用完成时间和移动终端能耗重要性的权重因子。

7.根据权利要求1所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述目标为:

目标函数表达为:

其中,cost为应用所有任务的执行代价之和,xi为每个任务的卸载决策,esti为任务的最早开始时间,efti为任务的最早完成时间,ti',i为依赖任务间的数据传输时间,xm为应用程序中输出任务vm的卸载策略,m为任务数量;

限制条件c1保证计算任务只有等待其前驱任务执行完成后才开始执行;限制条件c2表明应用的输出任务只能在本地执行。

8.根据权利要求1所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述以应用的所有任务执行代价之和最小化为目标,按照任务执行顺序依次确定每个任务的卸载决策,包括:

以应用的所有任务执行代价之和最小化为目标,按照调度层执行顺序逐层采用改进蚁群算法求解所述目标,按照任务执行顺序确定每个任务的卸载决策。

9.根据权利要求8所述的一种基于移动边缘计算的依赖型任务卸载方法,其特征是,所述采用改进蚁群算法求解所述目标,按照任务执行顺序依次确定每个任务的卸载决策,包括:

步骤1:构建可行解中引入伪随机比例选择规则,此处每只蚂蚁的可行解解指该蚂蚁所得到的卸载决策,求解蚂蚁编号临界值:

其中,k表示蚂蚁数量;都表示服务器资源,q、q'表示服务器类型编号,z、z′表示服务器编号;xi表示任务vi的卸载决策;alloweds表示移动边缘计算环境下可用的计算资源;为卸载决策xi中选择服务器资源和服务器资源的路径信息素强度;表示信息素强度最高路径即最优路径;为信息素强度的积累值;

步骤2:若蚂蚁编号小于等于蚂蚁编号临界值,根据最优路径上的卸载决策确定任务卸载位置,若蚂蚁编号大于蚂蚁编号临界值,计算转移概率,根据轮盘赌原则选择任务执行位置;

转移概率的计算公式为:

其中,α和β分别表示信息素和启发因子加权值;为卸载决策xi选择服务器时的路径信息素强度;为卸载决策xi选择计算资源的启发因子,取任务执行代价的倒数,使得执行代价值越大,路径信息素强度更新越小k表示蚂蚁编号;ki表示蚂蚁编号临界值;表示任务vi的卸载决策xi选择的服务器也就是任务vi的执行位置;表示路径信息素强度最大上的服务器选择;表示转移概率;

步骤3:计算每只蚂蚁的社会值socialk,比较社会值socialk与设定阈值social的大小,若socialk≥social,则蚂蚁为兵蚁,分配较大的权重系数进行局部信息素更新;若socialk<social,则蚂蚁为工蚁,分配较小的权重系数进行局部信息素更新;

信息素强度更新的公式为:

其中,k表示蚂蚁编号,socialk表示每只蚂蚁的社会值,由本次迭代最优路径上决策的任务执行代价costiter和蚂蚁k对应决策的任务执行代价costk来决定,costiter和costk的值依据蚂蚁对当前调度层中任务的卸载决策,根据任务的执行代价计算公式可得;为卸载决策xi选择服务器时的路径信息素强度;social表示阈值;ρl表示局部信息素挥发系数,σ1和σ2分别表示兵蚁和工蚁的更新权重系数,且σ1>σ2;表示信息素强度变量,用任务vi的卸载决策xi选择不同计算资源时任务执行代价的倒数来计算;

步骤4:选出本次迭代最优路径,融入奖惩系数进行全局信息素更新:

其中,为卸载决策xi选择服务器时的路径信息素强度;ρg表示全局信息素挥发系数;和costbest分别表示至今最优卸载决策上的信息素强度变量和执行代价;ε和δ分别表示不同的奖惩系数;costiter表示本次迭代最优路径上决策对应的任务执行代价;

步骤5:采用sigmoid函数,动态调整全局信息素浓度的挥发:

其中,表示最大信息素挥发系数;θ表示常数,且θ∈(01);t为迭代次数;

步骤6:循环迭代,最终得到应用所有组成任务的最优卸载决策。

10.一种基于移动边缘计算的依赖型任务卸载装置,其特征是,包括:

工作流转化模块,用于将移动终端上的应用形式化为多个任务组成的工作流,并用dag图表示;

调度层划分模块,用于遍历应用的dag图,依据遍历的深度将工作流中所有任务划分为不同调度层并确定各调度层的执行顺序;

任务顺序调整模块,用于为每个调度层内的各任务分配不同的优先级,依据任务的优先级顺序调整调度层内各任务执行顺序;

执行代价计算模块,用于计算工作流中各任务的执行代价;

卸载决策计算模块,用于以应用的所有任务执行代价之和最小化为目标,按照任务执行顺序确定每个任务的卸载决策。


技术总结
本发明公开了一种基于移动边缘计算的依赖型任务卸载方法及装置,方法包括:将移动终端上的应用形式化为多个任务组成的工作流,并用DAG图表示;遍历应用的DAG图,依据遍历的深度将工作流中所有任务划分为不同调度层并确定各调度层的执行顺序;为每个调度层内的各任务分配不同的优先级,依据任务的优先级顺序调整调度层内各任务执行顺序;计算工作流中各任务的执行代价;以应用的所有任务执行代价之和最小化为目标,按照任务执行顺序依次确定每个任务的卸载决策。本发明依据代价最小,将任务卸载到移动终端、边缘服务器或云服务器执行,充分利用了计算资源,有效保证了服务质量,降低了应用的完成时间和移动终端的能耗。

技术研发人员:卢先领;王瑶
受保护的技术使用者:江南大学
技术研发日:2021.02.09
技术公布日:2021.06.18
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1