一种基于改进遗传算法的云任务调度方法

文档序号:6543566阅读:341来源:国知局
一种基于改进遗传算法的云任务调度方法
【专利摘要】本发明提出了一种基于改进遗传算法的云任务调度方法—双适应度综合乘积遗传算法。本发明涉及云计算以及调度算法两大领域。针对云计算Map/Reduce编程模型,研究用户任务到虚拟资源的匹配问题,找到合适的资源供用户任务执行,算法的目标是同时使得任务总执行时间和平均执行时间都最短,该算法增加一个适应度以及综合采用任务调度的乘积算法。生成初始种群,计算个体适应度值,进行选择、交叉、变异操作,迭代数加一,不断生成新种群,在最后得到的种群中,计算每个个体适应度值,适应度值最高的个体为最优解,对该个体解码得到的资源节点序列就是本算法任务调度的最终结果。
【专利说明】一种基于改进遗传算法的云任务调度方法
【技术领域】
[0001]本发明涉及云计算以及调度算法两大领域,特指一种基于改进遗传算法的云任务调度方法。
【背景技术】
[0002]智能化信息时代的到来使新的计算模式一云计算诞生。云计算相对于以往的网格计算,具有超大规模、虚拟化、可伸缩性、按需服务、可管理性等特点,因此备受各大厂商和研究者们的关注和青睐。云计算主要是利用虚拟化技术,将各类资源包括计算资源、网络资源、存储资源虚拟化为资源池进行统一管理和对外服务。显而易见云计算的用户群体是十分广泛的,要处理的任务量和数据量也是非常庞大的,系统几乎时刻都在处理海量的任务和数据,所以如何对资源进行合理的分配,对任务进行高效的调度,使用户提交的任务处理时间较短、最大程度的满足用户服务质量(Quality of Service,QoS)是云计算的重点和难点。
[0003]云计算任务调度是一个NP问题,针对云环境Map/Reduce编程模型的任务调度问题,用遗传算法能得到较好的结果。目前一些算法大部分只关注了任务总执行时间,即用户的等待时间,而忽略了任务的平均执行时间,它关系到用户的综合满意程度。只有较少算法关注了用户的平均完成时间,但这种算法没有综合考虑到资源执行任务花费的总时间和平均时间,而是把总时间和平均时间分开来考虑,这样容易导致最优解产生两种极端情况:任务总完成时间较短,但平均完成时间不是最优的,或者任务平均完成时间较短,但总完成时间不是最优的。为了同时使任务总执行时间和平均执行时间都得到较短的结果,本发明提出一种双适应度综合乘积算法(Dual Fitness Multiplied Genetic Algorithm, DFMGA)的任务调度方法。

【发明内容】

[0004]本发明的目的在于解决目前调度算法中缺少考虑任务平均执行时间的问题,找出Map/Reduce编程模型中执行任务的资源节点序列,该序列需要同时满足执行任务的总时间和平均时间都较短。本发明提出了一种双适应度综合乘积遗传算法(Dual FitnessMultiplied Genetic Algorithm, DFMGA)的云任务调度方法。
[0005]一种双适应度综合乘积遗传算法的云任务调度方法,步骤如下:
[0006]步骤1:用户提交任务:用户提交任务个数以及任务长度。
[0007]步骤2:Map/Reduce处理任务:Map/Reduce编程模型把用户提交的任务分割成多个子任务,对这些众多子任务进行调度。
[0008]步骤3:寻找合适的资源节点:采用改进的遗传算法得到任务调度的资源序列,该序列即为执行任务的资源节点序列。
[0009]步骤4:执行任务:Map/RedUCe编程模型根据步骤3得到的资源节点序列,把任务分配给该序列并行执行,把执行结果返回给用户。[0010]本发明所述步骤3的流程如下:
[0011 ] (I)生成初始种群:对个体进行编码,得到任务对应的资源序列,再进行解码操作,得到每个资源节点对应的执行任务序列,由系统随机生成S条染色体,所有染色体个体组成一个种群。
[0012](2)计算适应度值:任务总完成时间的倒数作为一个适应度函数Iltl(X)=
【权利要求】
1.一种基于改进遗传算法的云任务调度方法一双适应度综合乘积遗传算法,其特征在于,该算法增加一个适应度函数即双适应度以及采用任务调度的综合乘积算法作为最终的适应度函数,并把该算法运用于云环境Map/Reduce编程模型的任务调度过程中,包括如下步骤: 步骤1:用户提交任务, 用户提交任务个数以及任务长度; 步骤2:Map/Reduce处理任务,Map/Reduce编程模型把用户提交的任务分割成多个子任务,对这些众多子任务进行调度; 步骤3:寻找合适的资源节点,采用改进的遗传算法得到任务调度的资源序列,该序列即为执行任务的资源节点序列; 步骤4:执行任务,Map/Reduce编程模型根据步骤3得到的资源节点序列,把任务分配给该序列并行执行,并把执行结果返回给用户。
2.如权利要求1所述一种基于改进遗传算法的云任务调度方法,其特征在于:需要输入以下信息: (1)任务信息,任务总个数T,每个任务划分的子任务个数subNum,每个子任务的长度Length,每个子任务预计运行时间; (2)资源节点信息,云环境中总的资源节点个数W,每个资源处理任务的能力; (3)遗传算法参数,种群规模S,终止迭代数Generation,交叉概率P。,变异概率Pm。
3.根据权利要求1所述的一种基于改进遗传算法的云任务调度方法,其特征在于:步骤3改进遗传算法中适应度函数的选取,该算法增加一个适应度函数并采用任务调度的综合乘积算法,把资源完成任务总时间的倒数作为一个适应度函数,平均执行时间的倒数作为另一个适应度函数,两者之积作为个体最终的适应度函数,该算法的目标是同时使任务总完成时间和平均完成时间都最短。
4.根据权利要求1所述的一种基于改进遗传算法的云任务调度方法,其特征在于:步骤3改进遗传算法中对于多个任务映射同一资源的情况,使用Min-Min算法解决该问题,优先执行短任务,避免长任务的阻塞问题。
5.根据权利要求1所述的一种基于改进遗传算法的云任务调度方法,其特征在于:步骤3改进遗传算法中变异操作,采用单点变异,变异后的基因值不是随机选取的,而是根据时间矩阵选择此任务预计执行时间最短的资源节点,若该资源节点为任务当前对应的资源节点,则该位置不进行变异操作,将在新一代种群中继续保留该个体,反之,将该任务迁移到最短资源上去执行,这保证了子个体的基因优于父个体。
【文档编号】G06F9/50GK103902375SQ201410146309
【公开日】2014年7月2日 申请日期:2014年4月11日 优先权日:2014年4月11日
【发明者】王冠, 梁社静, 周珺, 陈建中, 张少华 申请人:北京工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1