本发明属于边缘计算,具体而言,涉及一种任务调度方法。
背景技术:
1、在一个边缘计算系统中,会不断生成新的任务,而任务又会分配给系统中的某一个服务器中;但不同的服务器的部署位置不同、计算能力不同,并且服务器节点可能会移动,生成任务的节点到不同服务器节点的传输时间也不同。例如,在无人机参与网络处理不断生成的新任务场景中,每个无人机搭载一个处理任务的服务器,不同服务器的计算能力不同,无人机可能会出现移动,无人机所搭载的服务器可能由于故障而临时关闭或减少一部分计算资源。
2、针对上述的情况,传统的任务调度方法能满足任务的分配,但是对于服务器位移产生的距离变化使得传输时延变化的关注不足,往往易在分配任务时,出现传输时延过大的问题,本申请旨在提供一种任务调度方法,使得在复杂的边缘计算系统中,任务分配考虑到传输时延的问题。
技术实现思路
1、本发明的目的在于提供一种任务调度方法,以解决边缘计算系统中由于服务器位置变化,导致传输时延处于动态变化的情况下未考虑传输时延而对任务的高效处理产生影响的技术问题。
2、本发明的实施例通过以下技术方案实现:
3、提供一种任务调度方法,如图1所示,包括:
4、基于各服务器之间的关系构建图神经网络;
5、构建任务队列,并将实时生成的新任务置于所述任务队列中;
6、调度任务时,基于当前各服务器的状态信息更新所述图神经网络;
7、基于更新后的图神经网络,决策模型进行决策,将当前的任务分配给服务器;同时收到任务的服务器将其当前的状态信息反馈给生成任务的服务器。
8、进一步的,所述基于各服务器之间的关系构建图神经网络具体为:
9、基于各服务器两两之间的距离在可传输信息的范围构建图神经网络,所述图神经网络的边表示其所连服务器之间的传输时间;
10、所述图神经网络中的节点为服务器,所述节点的属性包括服务器编号、当前服务器与其他服务器的距离、当前服务器与其他服务器能否直接通信、服务器的计算能力、服务器处理当前任务的结束时间以及服务器的连通度。
11、进一步的,所述传输时间与两个服务器之间的距离成正比,与带宽成反比,即:
12、t=d/k
13、其中,t为传输时间,d为两个服务器之间的距离,k为带宽;
14、所述服务器的连通度的获取如下式:
15、
16、其中,connect_degree(j)表示图神经网络中第j个服务器的连通度,c表示第j个服务器可以直接通信传输信息的服务器的个数,tij表示第j个服务器与可以直接通信传输信息的第i个服务器之间的传输时间。
17、进一步的,所述任务队列中的任务的属性包括任务编号、占用时间、占用空间以及优先级;基于任务的属性与在任务队列中各任务之间的偏序关系构成有向图;所述有向图的流入流出表示任务之间的先后关系。
18、进一步的,所述基于当前各服务器的状态信息更新所述图神经网络中的状态信息为所述服务器的属性信息。
19、进一步的,所述决策模型包括学习网络与目标网络的决策模型,所述学习网络与目标网络结构相同,所述学习网络用于从新的数据中学习,并将学习后的参数值同步给所述目标网络,所述目标网络用于提供对状态的价值的计算。
20、进一步的,所述决策模型中,状态为由所述图神经网络与任务队列组成的元组;动作为基于任务编号和服务器编号组成的元组;奖励值为:-k1×占用时间-k2×占用空间-k3×优先级×占用时间;其中k1、k2、k3为预设的系数,所述占用时间的单位为秒,所述占用空间的单位为兆。
21、进一步的,所述决策模型中还包括状态转移函数,所述状态转移函数在当前任务队列的第一个任务执行调度策略后,将该任务移出任务队列,并基于该任务的占用时间将分配到该任务的服务器的处理当前任务的结束时间更新为处理所述第一个任务后的下一个任务的结束时间。
22、进一步的,所述决策模型的损失值为当前状态的第一价值与当前状态的第二价值的差;所述当前状态的第一价值由学习网络根据当前状态计算获得,所述当前状态的第二价值为奖励值与目标网络计算的下一个状态的价值之和。
23、进一步的,所述占用时间包括传输时间、等待时间以及处理时间,所述传输时间为生成任务的服务器将任务传输到处理该任务的另一服务器的时间,所述等待时间为服务器接收到任务后处理该任务之前所有任务所用的时间,所述处理时间为服务器处理该任务的时间。
24、本发明实施例的技术方案至少具有如下优点和有益效果:
25、本发明基于边缘计算系统中的各服务器状态信息构建图神经网络,并基于该图神经网络实时更新各服务器状态信息,服务器状态信息的图神经网络同时结合dqn算法实现系统中任务的自动分配调度,且由于图神经网络中考虑了各服务器的处理能力、处理时间以及各服务器之间的距离因素,因此能够有效避免现有技术所难以顾及的服务器之间的传输时延的问题,同时由于优先级的引入,也能够使得该系统能够自动的优先处理优先级高的任务;进而实现合理、高效的任务调度。
1.一种任务调度方法,其特征在于,包括:
2.根据权利要求1所述的任务调度方法,其特征在于,所述基于各服务器之间的关系构建图神经网络具体为:
3.根据权利要求2所述的任务调度方法,其特征在于,所述传输时间与两个服务器之间的距离成正比,与带宽成反比,即:
4.根据权利要求2所述的任务调度方法,其特征在于,所述任务队列中的任务的属性包括任务编号、占用时间、占用空间以及优先级;基于任务的属性与在任务队列中各任务之间的偏序关系构成有向图;所述有向图的流入流出表示任务之间的先后关系。
5.根据权利要求1所述的任务调度方法,其特征在于,所述基于当前各服务器的状态信息更新所述图神经网络中的状态信息为所述服务器的属性信息。
6.根据权利要求4所述的任务调度方法,其特征在于,所述决策模型包括学习网络与目标网络的决策模型,所述学习网络与目标网络结构相同,所述学习网络用于从新的数据中学习,并将学习后的参数值同步给所述目标网络,所述目标网络用于提供对状态的价值的计算。
7.根据权利要求6所述的任务调度方法,其特征在于,所述决策模型中,状态为由所述图神经网络与任务队列组成的元组;动作为基于任务编号和服务器编号组成的元组;奖励值为:-k1×占用时间-k2×占用空间-k3×优先级×占用时间;其中k1、k2、k3为预设的系数,所述占用时间的单位为秒,所述占用空间的单位为兆。
8.根据权利要求7所述的任务调度方法,其特征在于,所述决策模型中还包括状态转移函数,所述状态转移函数在当前任务队列的第一个任务执行调度策略后,将该任务移出任务队列,并基于该任务的占用时间将分配到该任务的服务器的处理当前任务的结束时间更新为处理所述第一个任务后的下一个任务的结束时间。
9.根据权利要求7所述的任务调度方法,其特征在于,所述决策模型的损失值为当前状态的第一价值与当前状态的第二价值的差;所述当前状态的第一价值由学习网络根据当前状态计算获得,所述当前状态的第二价值为奖励值与目标网络计算的下一个状态的价值之和。
10.根据权利要求4所述的任务调度方法,其特征在于,所述占用时间包括传输时间、等待时间以及处理时间,所述传输时间为生成任务的服务器将任务传输到处理该任务的另一服务器的时间,所述等待时间为服务器接收到任务后处理该任务之前所有任务所用的时间,所述处理时间为服务器处理该任务的时间。