CN110389819A - 一种计算密集型批处理任务的调度方法和系统 - Google Patents

一种计算密集型批处理任务的调度方法和系统 Download PDF

Info

Publication number
CN110389819A
CN110389819A CN201910546605.3A CN201910546605A CN110389819A CN 110389819 A CN110389819 A CN 110389819A CN 201910546605 A CN201910546605 A CN 201910546605A CN 110389819 A CN110389819 A CN 110389819A
Authority
CN
China
Prior art keywords
chromosome
module
fitness
population
iteration population
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
CN201910546605.3A
Other languages
English (en)
Other versions
CN110389819B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201910546605.3A priority Critical patent/CN110389819B/zh
Publication of CN110389819A publication Critical patent/CN110389819A/zh
Application granted granted Critical
Publication of CN110389819B publication Critical patent/CN110389819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Mathematical Physics (AREA)
  • Genetics & Genomics (AREA)
  • Physiology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种计算密集型批处理任务的调度方法,属于分布式计算任务调度领域,本发明主要针对遗传算法在任务调度中具有多点寻优能力但易收敛而模拟退火算法在任务调度中局部搜索能力极强却不具备并行性的问题提出了一种基于混合改进遗传模拟退火算法的计算密集型批处理任务调度策略,它首先对遗传算法的初始化方法、选择算子、交叉算子、交叉概率、变异概率和算法的终止条件做出一定的改进,然后将改进遗传算法产生的多个解作为模拟退火算法的输入,同时对多个解进行模拟退火并将结果中最优秀的解作为算法的最终解。该策略综合了遗传算法多点寻优和模拟退火算法局部搜索能力强的优势,更能减少任务完成时间,保障系统的负载均衡性。

Description

一种计算密集型批处理任务的调度方法和系统
技术领域
本发明属于分布式计算任务调度领域,更具体地,涉及一种计算密集型批处理任务的调度方法和系统。
背景技术
在计算密集型批处理任务中,有一种任务运行时间很长,且要占用大量的CPU和内存资源。对于该种类型的任务调度策略而言,任务完成时间是衡量调度策略好坏的一个重要指标:在任务大小和数量一定时,任务完成时间越小,系统服务质量越高。
现有实现密集型批处理任务的调度方法,主要包括基于遗传算法的调度方法、以及基于模拟退火算法的调度方法。其中基于遗传算法的调度方法是使用多点寻优的方式同时对一组解进行比较和评估,保障了解的全局最优性,但在搜索解的后期易过早收敛,且稳定性不足;基于模拟退火算法的调度方法局部搜索能力极强,但不具备并行搜索最优解的能力。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种计算密集型批处理任务的调度方法和系统,其目的在于,解决现有基于遗传算法的调度方法存在的易过早收敛,且稳定性不足的技术问题,以及现有基于模拟退火算法的调度方法不具备并行搜索最优解能力的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种计算密集型批处理任务的调度方法,包括以下步骤:
(1)按照编码规则产生2N个染色体,从2N个染色体中选择适应度最大的0.5N个染色体,在剩下的1.5N个染色体中随机选取0.5N个染色体,最优秀的0.5个染色体和随机选取的0.5N个染色体组成当前迭代种群,其中N是是0到正无穷的奇数;
(2)设置迭代次数cGen=0;
(3)判断迭代次数cGen是否小于迭代次数阈值,如果是则转入步骤(4),否则转入步骤(12);
(4)获取当前迭代种群中每个染色体的适应度,并根据轮盘赌选择算法获取每个染色体在后续选择过程中被选中的概率区间;
(5)根据步骤(4)中获取的当前迭代种群中每个染色体的适应度确定适应度最大的染色体,将其放入当前迭代种群的下一代迭代种群中;
(6)判断当前迭代种群的下一代迭代种群中染色体的总数是否小于N,如果是则转入步骤(7),否则将迭代次数cGen加一,并将该下一代迭代种群设置为当前迭代种群,并返回步骤(3);
(7)根据步骤(4)获取的每个染色体在后续选择过程中被选中的概率区间并使用轮盘赌选择算法从当前迭代种群中选择两个染色体,并判断选择的两个染色体的自适应交叉概率是否大于0到1之间的第一随机数,如果是则转入步骤(8),否则将这两个染色体作为交叉运算结果,然后进入步骤(9);
(8)使用交叉算子对选择的两个染色体进行运算,以得到交叉运算结果;
(9)判断交叉运算结果中一个染色体的自适应变异概率pm是否大于0到1之间的第二随机数,如果是则转入步骤(10),否则将该染色体作为变异运算结果放入当前迭代种群的下一代迭代种群中,然后进入步骤(11);
(10)使用单点变异算子对该染色体进行运算,以得到运算结果,选择该运算结果的适应度与该染色体的适应度中较大值所对应的染色体作为变异运算结果并放入当前迭代种群的下一代迭代种群中;
(11)针对交叉运算结果中的另一个染色体,重复上述步骤(9)和(10),然后返回步骤(6);
(12)使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,每次迭代处理均得到一个计算结果,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解作为调度结果。
优选地,步骤(1)中使用的编码规则是采用实数直接编码的方式:每条染色体的长度等于调度任务的总数M,染色体上基因的取值为处理调度任务的虚拟机的序号。
优选地,染色体的适应度是通过以下公式来确定:
其中F表示适应度,timei表示该染色体对应的调度方案下,第i个虚拟机完成分配给其的所有调度任务的耗时,P表示虚拟机总数。
优选地,步骤(7)中的自适应交叉概率pc等于:
其中K1和K2均为常数,且K1小于K2,Fmax表示当前迭代种群中所有染色体的适应度中的最大值,Favg表示当前迭代种群中全部染色体的适应度的平均值,f’表示选择的两个染色体中适应度的最大值。
优选地,步骤(8)具体为,首先使用单点交叉算子对两个染色体进行交叉运算,以得到两个新的染色体,然后从所有4个染色体中选择适应度最大的两个染色体,作为交叉运算结果。
优选地,自适应变异概率pm是采用以下公式计算:
其中K3和K4均为常数,且K3小于K4,f’表示参与变异的染色体的适应度。
按照本发明的另一方面,提供了一种计算密集型批处理任务的调度系统,包括:
第一模块,用于按照编码规则产生2N个染色体,从2N个染色体中选择适应度最大的0.5N个染色体,在剩下的1.5N个染色体中随机选取0.5N个染色体,最优秀的0.5个染色体和随机选取的0.5N个染色体组成当前迭代种群,其中N是是0到正无穷的奇数;
第二模块,用于设置迭代次数cGen=0;
第三模块,用于判断迭代次数cGen是否小于迭代次数阈值,如果是则转入第四模块,否则转入第十二模块;
第四模块,用于获取当前迭代种群中每个染色体的适应度,并根据轮盘赌选择算法获取每个染色体在后续选择过程中被选中的概率区间;
第五模块,用于根据第四模块中获取的当前迭代种群中每个染色体的适应度确定适应度最大的染色体,将其放入当前迭代种群的下一代迭代种群中;
第六模块,用于判断当前迭代种群的下一代迭代种群中染色体的总数是否小于N,如果是则转入第七模块,否则将迭代次数cGen加一,并将该下一代迭代种群设置为当前迭代种群,并返回第三模块;
第七模块,用于根据第四模块获取的每个染色体在后续选择过程中被选中的概率区间并使用轮盘赌选择算法从当前迭代种群中选择两个染色体,并判断选择的两个染色体的自适应交叉概率是否大于0到1之间的第一随机数,如果是则转入第八模块,否则将这两个染色体作为交叉运算结果,然后进入第九模块;
第八模块使用交叉算子对选择的两个染色体进行运算,以得到交叉运算结果;
第九模块,用于判断交叉运算结果中一个染色体的自适应变异概率pm是否大于0到1之间的第二随机数,如果是则转入第十模块,否则将该染色体作为变异运算结果放入当前迭代种群的下一代迭代种群中,然后进入第十一模块;
第十模块,用于使用单点变异算子对该染色体进行运算,以得到运算结果,选择该运算结果的适应度与该染色体的适应度中较大值所对应的染色体作为变异运算结果并放入当前迭代种群的下一代迭代种群中;
第十一模块,用于针对交叉运算结果中的另一个染色体,重复上述第九模块和第十模块,然后返回第六模块;
第十二模块,用于使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,每次迭代处理均得到一个计算结果,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解作为调度结果。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、由于本发明采用了步骤(12),使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解,因此能够解决现有基于遗传算法的调度方法存在的易过早收敛,且稳定性不足的技术问题。
2、由于本发明采用了步骤(12)对迭代种群的所有染色体同时进行模拟退火处理,因此能够解决现有基于模拟退火算法的调度方法不具备并行搜索最优解能力的技术问题。
3、由于本发明采用了步骤(4)到(11),对选择算子、交叉算子、变异算子做出了筛选处理,从而增强了遗传算法的寻优能力,并进一步提升了本发明的调度性能。
附图说明
图1是本发明染色体编码的示例图。
图2是本发明计算密集型批处理任务的调度方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提出了一种计算密集型批处理任务的调度方法和系统。它综合了遗传算法多点寻优和模拟退火算法局部搜索能力强的优势,提升了本策略的寻优能力。
本发明的基本思路在于,对遗传算法的初始化方法、选择算子、交叉算子、交叉概率、变异概率和算法的终止条件做出一定的改进,然后将改进遗传算产生的多个解作为模拟退火算法的输入,同时对多个解进行模拟退火,并将结果中最优秀的解作为算法的最终解。
为了清晰阐述本发明,对本申请文件中出现的术语加以解释和说明:
遗传算法:它是一种通过模拟生物界相互竞争、优胜劣汰的规律获得所求问题优秀解的随机化搜索算法。
个体、染色体、基因:个体表示所求问题解空间中的一个解,一个个体有一个染色体,一个染色体上有多个基因,所以个体也看作是染色体,基因也可以看作影响解的一个因素。
种群、种群规模:种群表示解空间的一个子集,种群规模表示种群的大小,即种群中包含染色体的个数,也是算法执行过程中候选解的个数。种群规模越大,算法并行搜索能力越强,但执行时间也会越长。产生初代种群的方法为:初始化时种群染色体数量越多,包含的优秀基因相对的也会越多,算法找到最优解的可能性也会越大,但是这也会导致算法每次迭代的时间越长,因此群体规模不可能无限大。为了保证初代种群足够优秀,假设种群规模为N,产生初始种群时,算法首先随机生成2N个染色体,先取其中最优秀的0.5N个染色体,然后在剩下的1.5N个染色体中随机选取0.5N个染色体作为初代种群。
适应度、适应度函数:染色体的适应度表示该染色体所表示的解的好坏,适应度函数指根据染色体计算染色体适应度的方法,种群在进化的过程中,往往朝着适应度变好的方向进化,本算法的适应度函数如下:
其中M表示虚拟机的个数,timei表示该种调度方案下第i个虚拟机完成任务的耗时,其中单个任务在单个虚拟机上的执行时间可由该任务的百万条指令数除以该虚拟机每秒钟可执行的百万条指令数。
编码、解码:编码是对问题解进行形式化描述的过程,解码是其逆过程,它将解的形式化描述翻译成具体的语义。算法采用实数编码,染色体(基因的个数取决于待调度的任务的个数,基因的取值范围取决于可用虚拟机的数目,基因在染色体上的位置和取值决定着哪个任务被分配到哪个虚拟机)。假设任务数为8,虚拟机数为4,任务编号为0到7,虚拟机编号为0到3,编码后形成的一条染色体序列为3,3,0,2,1,0,2,2(其分别对应于处理第0到第7号调度任务的虚拟机编号),如图1,其含义如下表1所示:
表1
选择操作:选择操作体现了生物进化过程中优胜劣汰的过程,染色体表现得越优秀,被保留到下一代的概率越高轮盘赌选择方法可以使得越优秀的染色体被保留到下一代的机会越大,本项目中用此方法作为算法的选择算子。此外为了使种群足够优秀,适应度最大的染色体直接被保留到下一代。
交叉操作与交叉概率:交叉操作用某一种算法交换两个染色体的基因的一部分,产生新的染色体。本算法采用单点交叉,即交换染色体某个基因位点后的所有基因。同时为了将优秀的基因遗传到下一代,将交叉后产生的两个染色体与父代染色体比较,选择其中最优秀的两个保留到下一代。
自适应交叉概率为:
其中K1小于K2,Fmax是最优染色体的适应度,Favg是种群中全部染色体的平均适应度,f’是参与交叉的两个染色体适应度的最大值
变异操作与变异概率:变异操作是指按照一定规则改变个体的某些基因,与交叉操作相比,变异操作使种群变化的程度更小。本算法采用单点变异且变异的染色体如果更优秀,则保留,否则就丢弃。
自适应变异概率为:
其中K3小于K4,Fmax是最优染色体的适应度,Favg是种群中全部染色体的平均适应度,f是变异染色体的适应度,f’是参与交叉的两个染色体适应度的最大值。
模拟退火:模拟退火算法是模拟物理退火的过程,物体加热时,内部能量逐渐增大,冷却后温度到达平衡状态,内能值减为最小,该算法使用Metropolis准则接受新解。
如图2所示,本发明提供了一种计算密集型批处理任务的调度方法,包括以下步骤:
(1)按照编码规则产生2N个染色体,从2N个染色体中选择适应度最大的0.5N个染色体,在剩下的1.5N个染色体中随机选取0.5N个染色体,最优秀的0.5个染色体和随机选取的0.5N个染色体组成当前迭代种群;
具体而言,编码规则是采用实数直接编码的方式:每条染色体的长度(即所含基因数量)等于调度任务的总数M,染色体上基因的取值为处理调度任务的虚拟机的序号{0,1,2,...,P-1},P表示调度系统中的虚拟机总数,因此每个基因所在位置就表示调度任务的编号,基因值就表示调度任务所被分配到的虚拟机的编号。
在本步骤中,N的取值范围是0到-正无穷的正奇数,优选为301
在本步骤中,染色体的适应度是通过以下公式来确定:
其中F表示适应度,timei表示该染色体对应的调度方案下,第i个虚拟机完成分配给其的所有调度任务的耗时,其中单个任务在单个虚拟机上的执行时间可由该任务的百万条指令数除以该虚拟机每秒钟可执行的百万条指令数;
(2)设置迭代次数cGen=0;
(3)判断迭代次数cGen是否小于迭代次数阈值,如果是则转入步骤(4),否则转入步骤(12);
在本步骤中,迭代次数的阈值是100。
(4)获取当前迭代种群中每个染色体的适应度,并根据轮盘赌选择算法(即Roulette Wheel Selection)获取每个染色体在后续选择过程中被选中的概率区间;
具体而言,染色体的适应度已经在上面步骤(1)中得以描述,在此不再赘述;
(5)根据步骤(4)中获取的当前迭代种群中每个染色体的适应度确定适应度最大的染色体,将其放入当前迭代种群的下一代迭代种群中;
(6)判断当前迭代种群的下一代迭代种群中染色体的总数是否小于N,如果是则转入步骤(7),否则将迭代次数cGen加一,并将该下一代迭代种群设置为当前迭代种群,并返回步骤(3);
(7)根据步骤(4)获取的每个染色体在后续选择过程中被选中的概率区间并使用轮盘赌选择算法从当前迭代种群中选择两个染色体,并判断选择的两个染色体的自适应交叉概率是否大于0到1之间的第一随机数,如果是则转入步骤(8),否则将这两个染色体作为交叉运算结果,然后进入步骤(9);
具体而言,自适应交叉概率pc等于:
其中K1和K2均为常数,K1=0.6,K2=0.9,且K1小于K2,Fmax表示当前迭代种群中所有染色体的适应度中的最大值,Favg表示当前迭代种群中全部染色体的适应度的平均值,f’表示选择的两个染色体中适应度的最大值。
(8)使用交叉算子对选择的两个染色体进行运算,以得到交叉运算结果;
本步骤具体为,首先使用单点交叉算子对两个染色体进行交叉运算,以得到两个新的染色体,然后从所有4个染色体中选择适应度最大的两个染色体,作为交叉运算结果。
(9)判断交叉运算结果中一个染色体的自适应变异概率pm是否大于0到1之间的第二随机数,如果是则转入步骤(10),否则将该染色体作为变异运算结果放入当前迭代种群的下一代迭代种群中,然后进入步骤(11);
具体而言,自适应变异概率是采用以下公式计算:
其中K3和K4均为常数,K3=0.05,K4=0.1,且K3小于K4,f’表示参与变异的染色体的适应度。
(10)使用单点变异算子对该染色体进行运算,以得到运算结果,选择该运算结果的适应度与该染色体的适应度中较大值所对应的染色体作为变异运算结果并放入当前迭代种群的下一代迭代种群中;
(11)针对交叉运算结果中的另一个染色体,重复上述步骤(9)和(10),然后返回步骤(6);
(12)使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,每次迭代处理均得到一个计算结果,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解作为调度结果。
本发明具有以下的有益效果:首先,它综合了遗传算法多点寻优和模拟退火算法局部搜索能力强的优势,提升了本策略的寻优能力;此外,本发明采用了步骤至步骤,对遗传算法的初始化方法、选择算子、交叉算子、交叉概率、变异概率和算法的终止条件做出一定的改进,增强了遗传算法的寻优能力,该方案进一步提升了本策略的寻优能力。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种计算密集型批处理任务的调度方法,其特征在于,包括以下步骤:
(1)按照编码规则产生2N个染色体,从2N个染色体中选择适应度最大的0.5N个染色体,在剩下的1.5N个染色体中随机选取0.5N个染色体,最优秀的0.5个染色体和随机选取的0.5N个染色体组成当前迭代种群,其中N是是0到正无穷的奇数;
(2)设置迭代次数cGen=0;
(3)判断迭代次数cGen是否小于迭代次数阈值,如果是则转入步骤(4),否则转入步骤(12);
(4)获取当前迭代种群中每个染色体的适应度,并根据轮盘赌选择算法获取每个染色体在后续选择过程中被选中的概率区间;
(5)根据步骤(4)中获取的当前迭代种群中每个染色体的适应度确定适应度最大的染色体,将其放入当前迭代种群的下一代迭代种群中;
(6)判断当前迭代种群的下一代迭代种群中染色体的总数是否小于N,如果是则转入步骤(7),否则将迭代次数cGen加一,并将该下一代迭代种群设置为当前迭代种群,并返回步骤(3);
(7)根据步骤(4)获取的每个染色体在后续选择过程中被选中的概率区间并使用轮盘赌选择算法从当前迭代种群中选择两个染色体,并判断选择的两个染色体的自适应交叉概率是否大于0到1之间的第一随机数,如果是则转入步骤(8),否则将这两个染色体作为交叉运算结果,然后进入步骤(9);
(8)使用交叉算子对选择的两个染色体进行运算,以得到交叉运算结果;
(9)判断交叉运算结果中一个染色体的自适应变异概率pm是否大于0到1之间的第二随机数,如果是则转入步骤(10),否则将该染色体作为变异运算结果放入当前迭代种群的下一代迭代种群中,然后进入步骤(11);
(10)使用单点变异算子对该染色体进行运算,以得到运算结果,选择该运算结果的适应度与该染色体的适应度中较大值所对应的染色体作为变异运算结果并放入当前迭代种群的下一代迭代种群中;
(11)针对交叉运算结果中的另一个染色体,重复上述步骤(9)和(10),然后返回步骤(6);
(12)使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,每次迭代处理均得到一个计算结果,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解作为调度结果。
2.根据权利要求1所述的调度方法,其特征在于,步骤(1)中使用的编码规则是采用实数直接编码的方式:每条染色体的长度等于调度任务的总数M,染色体上基因的取值为处理调度任务的虚拟机的序号。
3.根据权利要求1所述的调度方法,其特征在于,染色体的适应度是通过以下公式来确定:
其中F表示适应度,timei表示该染色体对应的调度方案下,第i个虚拟机完成分配给其的所有调度任务的耗时,P表示虚拟机总数。
4.根据权利要求1所述的调度方法,其特征在于,步骤(7)中的自适应交叉概率pc等于:
其中K1和K2均为常数,且K1小于K2,Fmax表示当前迭代种群中所有染色体的适应度中的最大值,Favg表示当前迭代种群中全部染色体的适应度的平均值,f’表示选择的两个染色体中适应度的最大值。
5.根据权利要求4所述的调度方法,其特征在于,步骤(8)具体为,首先使用单点交叉算子对两个染色体进行交叉运算,以得到两个新的染色体,然后从所有4个染色体中选择适应度最大的两个染色体,作为交叉运算结果。
6.根据权利要求4所述的调度方法,其特征在于,自适应变异概率pm是采用以下公式计算:
其中K3和K4均为常数,且K3小于K4,f’表示参与变异的染色体的适应度。
7.一种计算密集型批处理任务的调度系统,其特征在于,包括:
第一模块,用于按照编码规则产生2N个染色体,从2N个染色体中选择适应度最大的0.5N个染色体,在剩下的1.5N个染色体中随机选取0.5N个染色体,最优秀的0.5个染色体和随机选取的0.5N个染色体组成当前迭代种群,其中N是是0到正无穷的奇数;
第二模块,用于设置迭代次数cGen=0;
第三模块,用于判断迭代次数cGen是否小于迭代次数阈值,如果是则转入第四模块,否则转入第十二模块;
第四模块,用于获取当前迭代种群中每个染色体的适应度,并根据轮盘赌选择算法获取每个染色体在后续选择过程中被选中的概率区间;
第五模块,用于根据第四模块中获取的当前迭代种群中每个染色体的适应度确定适应度最大的染色体,将其放入当前迭代种群的下一代迭代种群中;
第六模块,用于判断当前迭代种群的下一代迭代种群中染色体的总数是否小于N,如果是则转入第七模块,否则将迭代次数cGen加一,并将该下一代迭代种群设置为当前迭代种群,并返回第三模块;
第七模块,用于根据第四模块获取的每个染色体在后续选择过程中被选中的概率区间并使用轮盘赌选择算法从当前迭代种群中选择两个染色体,并判断选择的两个染色体的自适应交叉概率是否大于0到1之间的第一随机数,如果是则转入第八模块,否则将这两个染色体作为交叉运算结果,然后进入第九模块;
第八模块使用交叉算子对选择的两个染色体进行运算,以得到交叉运算结果;
第九模块,用于判断交叉运算结果中一个染色体的自适应变异概率pm是否大于0到1之间的第二随机数,如果是则转入第十模块,否则将该染色体作为变异运算结果放入当前迭代种群的下一代迭代种群中,然后进入第十一模块;
第十模块,用于使用单点变异算子对该染色体进行运算,以得到运算结果,选择该运算结果的适应度与该染色体的适应度中较大值所对应的染色体作为变异运算结果并放入当前迭代种群的下一代迭代种群中;
第十一模块,用于针对交叉运算结果中的另一个染色体,重复上述第九模块和第十模块,然后返回第六模块;
第十二模块,用于使用模拟退火算法对当前迭代种群中的每个染色体进行多次迭代处理,每次迭代处理均得到一个计算结果,从多次迭代处理得到的多个计算结果中选择最大值作为最终的退火计算结果,从所有染色体的最终的退火计算结果中选择最大值对应的染色体作为全局最优解作为调度结果。
CN201910546605.3A 2019-06-24 2019-06-24 一种计算密集型批处理任务的调度方法和系统 Active CN110389819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910546605.3A CN110389819B (zh) 2019-06-24 2019-06-24 一种计算密集型批处理任务的调度方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910546605.3A CN110389819B (zh) 2019-06-24 2019-06-24 一种计算密集型批处理任务的调度方法和系统

Publications (2)

Publication Number Publication Date
CN110389819A true CN110389819A (zh) 2019-10-29
CN110389819B CN110389819B (zh) 2022-06-21

Family

ID=68285696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910546605.3A Active CN110389819B (zh) 2019-06-24 2019-06-24 一种计算密集型批处理任务的调度方法和系统

Country Status (1)

Country Link
CN (1) CN110389819B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110908782A (zh) * 2019-11-01 2020-03-24 湖北省楚天云有限公司 一种基于遗传算法优化的封装类分布式作业任务调度方法及系统
CN111124619A (zh) * 2019-12-25 2020-05-08 浙江大学 一种面向二次调度的容器调度方法
CN111552557A (zh) * 2020-04-07 2020-08-18 哈尔滨工程大学 一种优化多核处理器任务调度序列方法
CN112099959A (zh) * 2020-11-20 2020-12-18 支付宝(杭州)信息技术有限公司 数据处理方法及装置
CN112181598A (zh) * 2020-10-12 2021-01-05 内蒙古农业大学 基于改进遗传算法的云计算任务调度方法
CN112288166A (zh) * 2020-10-29 2021-01-29 重庆理工大学 基于遗传-模拟退火组合算法对物流配送的优化方法
CN113326917A (zh) * 2021-04-29 2021-08-31 开放智能机器(上海)有限公司 一种基于遗传算法的自动优化算子的方法和系统
CN113361833A (zh) * 2020-03-02 2021-09-07 联芯集成电路制造(厦门)有限公司 化学机械抛光系统以及相关的派工管理方法
CN113411369A (zh) * 2020-03-26 2021-09-17 山东管理学院 一种云服务资源协同优化调度方法、系统、介质及设备
CN114518937A (zh) * 2022-01-27 2022-05-20 广州鼎甲计算机科技有限公司 一种虚拟机备份调度方法、系统、装置及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902375A (zh) * 2014-04-11 2014-07-02 北京工业大学 一种基于改进遗传算法的云任务调度方法
CN107274124A (zh) * 2017-06-06 2017-10-20 泉州装备制造研究所 一种基于两阶段多种群并行遗传算法的agv小车调度优化方法
CN107678850A (zh) * 2017-10-17 2018-02-09 合肥工业大学 中继卫星任务调度方法及装置
CN108416523A (zh) * 2018-03-08 2018-08-17 中国人民解放军陆军工程大学 任务调度方法、装置、电子设备及存储介质
CN108829501A (zh) * 2018-05-18 2018-11-16 天津科技大学 一种基于改进遗传算法的批处理科学工作流任务调度算法
CN108881432A (zh) * 2018-06-15 2018-11-23 广东省城乡规划设计研究院 基于ga算法的云计算集群负载调度方法
EP3406531A1 (en) * 2017-05-24 2018-11-28 Telespazio S.p.A. Innovative satellite scheduling method based on genetic algorithms and simulated annealing and related mission planner
CN109800071A (zh) * 2019-01-03 2019-05-24 华南理工大学 一种基于改进遗传算法的云计算任务调度方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902375A (zh) * 2014-04-11 2014-07-02 北京工业大学 一种基于改进遗传算法的云任务调度方法
EP3406531A1 (en) * 2017-05-24 2018-11-28 Telespazio S.p.A. Innovative satellite scheduling method based on genetic algorithms and simulated annealing and related mission planner
CN107274124A (zh) * 2017-06-06 2017-10-20 泉州装备制造研究所 一种基于两阶段多种群并行遗传算法的agv小车调度优化方法
CN107678850A (zh) * 2017-10-17 2018-02-09 合肥工业大学 中继卫星任务调度方法及装置
CN108416523A (zh) * 2018-03-08 2018-08-17 中国人民解放军陆军工程大学 任务调度方法、装置、电子设备及存储介质
CN108829501A (zh) * 2018-05-18 2018-11-16 天津科技大学 一种基于改进遗传算法的批处理科学工作流任务调度算法
CN108881432A (zh) * 2018-06-15 2018-11-23 广东省城乡规划设计研究院 基于ga算法的云计算集群负载调度方法
CN109800071A (zh) * 2019-01-03 2019-05-24 华南理工大学 一种基于改进遗传算法的云计算任务调度方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
XU JIE: "Task scheduling algorithm based on dual fitness genetic annealing algorithm in cloud computing environment", 《JOURNAL OF UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA》 *
XU JIE: "Task scheduling algorithm based on dual fitness genetic annealing algorithm in cloud computing environment", 《JOURNAL OF UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA》, vol. 42, no. 6, 30 November 2013 (2013-11-30), pages 900 - 4 *
李晓璐: "基于模拟退火遗传算法的云计算任务调度的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
李晓璐: "基于模拟退火遗传算法的云计算任务调度的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, 15 February 2017 (2017-02-15), pages 140 - 216 *
艾芊: "《现代电力系统辨识人工智能方法》", 31 January 2012, 上海:上海交通大学出版社, pages: 363 - 364 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110908782A (zh) * 2019-11-01 2020-03-24 湖北省楚天云有限公司 一种基于遗传算法优化的封装类分布式作业任务调度方法及系统
CN111124619A (zh) * 2019-12-25 2020-05-08 浙江大学 一种面向二次调度的容器调度方法
CN111124619B (zh) * 2019-12-25 2023-07-21 浙江大学 一种面向二次调度的容器调度方法
US11397425B2 (en) 2020-03-02 2022-07-26 United Semiconductor (Xiamen) Co., Ltd. CMP polishing system and associated pilot management system
CN113361833A (zh) * 2020-03-02 2021-09-07 联芯集成电路制造(厦门)有限公司 化学机械抛光系统以及相关的派工管理方法
CN113411369A (zh) * 2020-03-26 2021-09-17 山东管理学院 一种云服务资源协同优化调度方法、系统、介质及设备
CN113411369B (zh) * 2020-03-26 2022-05-31 山东管理学院 一种云服务资源协同优化调度方法、系统、介质及设备
CN111552557A (zh) * 2020-04-07 2020-08-18 哈尔滨工程大学 一种优化多核处理器任务调度序列方法
CN111552557B (zh) * 2020-04-07 2023-12-22 哈尔滨工程大学 一种优化多核处理器任务调度序列方法
CN112181598A (zh) * 2020-10-12 2021-01-05 内蒙古农业大学 基于改进遗传算法的云计算任务调度方法
CN112288166A (zh) * 2020-10-29 2021-01-29 重庆理工大学 基于遗传-模拟退火组合算法对物流配送的优化方法
CN112288166B (zh) * 2020-10-29 2023-08-29 重庆理工大学 基于遗传-模拟退火组合算法对物流配送的优化方法
CN112099959B (zh) * 2020-11-20 2021-03-02 支付宝(杭州)信息技术有限公司 数据处理方法及装置
CN112099959A (zh) * 2020-11-20 2020-12-18 支付宝(杭州)信息技术有限公司 数据处理方法及装置
CN113326917A (zh) * 2021-04-29 2021-08-31 开放智能机器(上海)有限公司 一种基于遗传算法的自动优化算子的方法和系统
CN114518937A (zh) * 2022-01-27 2022-05-20 广州鼎甲计算机科技有限公司 一种虚拟机备份调度方法、系统、装置及存储介质

Also Published As

Publication number Publication date
CN110389819B (zh) 2022-06-21

Similar Documents

Publication Publication Date Title
CN110389819A (zh) 一种计算密集型批处理任务的调度方法和系统
Shen et al. Mathematical modeling and multi-objective evolutionary algorithms applied to dynamic flexible job shop scheduling problems
CN110109753A (zh) 基于多维度约束遗传算法的资源调度方法及系统
CN104572297B (zh) 一种基于遗传算法的Hadoop作业调度方法
CN101901425A (zh) 一种基于多种群协同进化的柔性作业车间调度方法
CN110134007A (zh) 多无人机协同目标分配方法
CN112053002B (zh) 一种基于效用感知的云制造多任务调度方法
CN109840154A (zh) 一种移动云环境下基于任务依赖的计算迁移方法
CN106022601B (zh) 一种多目标资源配置方法
CN104504439A (zh) 基于改进人工蜂群算法的约束多目标优化方法
CN109271320A (zh) 一种上位多目标测试用例优先级排序方法
Liu et al. Reconfiguration of virtual cellular manufacturing systems via improved imperialist competitive approach
CN114565239A (zh) 用于产业园区的综合低碳能源调度方法及系统
Fakhrzad et al. A new multi-objective job shop scheduling with setup times using a hybrid genetic algorithm
CN116050086A (zh) 一种基于遗传算法的多机空战任务分配方法
Zhang et al. A cooperative evolutionary algorithm with simulated annealing for integrated scheduling of distributed flexible job shops and distribution
CN108596339A (zh) 一种构建子种群和子问题的多目标优化遗传算法
CN102945510A (zh) 一种求解复杂资源受限项目调度问题的有效方法
CN114021934A (zh) 基于改进spea2求解车间节能调度问题的方法
Liang et al. Improved nsga2 algorithm to solve multi-objective flexible job shop scheduling problem
CN112148446A (zh) 一种用于多技能资源受限项目调度的进化策略算法
CN109347913A (zh) 一种基于智能遗传算法的web服务协同调度方法及系统
CN106611287A (zh) 云制造中多目标资源无偏好优化配置算法
CN107730065B (zh) 基于改进变邻域搜索算法的生产调度方法及系统
CN114021914B (zh) 一种无人机集群飞防调度方法及装置

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