CN108829501B - 一种基于改进遗传算法的批处理科学工作流任务调度算法 - Google Patents
一种基于改进遗传算法的批处理科学工作流任务调度算法 Download PDFInfo
- Publication number
- CN108829501B CN108829501B CN201810477096.9A CN201810477096A CN108829501B CN 108829501 B CN108829501 B CN 108829501B CN 201810477096 A CN201810477096 A CN 201810477096A CN 108829501 B CN108829501 B CN 108829501B
- Authority
- CN
- China
- Prior art keywords
- task scheduling
- genetic algorithm
- solution
- task
- batch processing
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于改进遗传算法的批处理科学工作流任务调度算法,包括以下步骤:根据整数编码方式,生成初始种群;根据适应度函数值,不断进行遗传算法的交叉变异操作,淘汰劣质解,生成新的优质解;经过多次迭代根据适应度函数保留一个最优解;在不改变最优解关键路径的基础上进行非关键路径虚拟机使用数量收缩操作,得到最终解,并将最终解输出。本发明设计合理,其能够高效地进行批处理科学工作流的任务调度,有利于降低批处理科学工作流任务调度过程中产生的任务调度成本以及任务调度时间,可广泛应用于多种不同规模的面向成本的云计算任务调度中。
Description
技术领域
本发明属于云计算任务调度技术领域,尤其是一种基于改进遗传算法的批处理科学工作流任务调度算法。
背景技术
随着计算机网络技术的发展,科技已经进入了大数据时代,每时每刻都会有大量的数据产生。数据是新型技术发展的背后动力,并且蕴含着无尽的商机,使得越来越多的企业投入到了数据领域的研究,作为分布式以及网格计算发展的云计算技术应运而生。在大数据时代,如何行之有效地管理日益增长数据量,如何从大量的数据当中提取出有用的信息,也就是说使数据由“数”到“据”的转化问题,成为当今IT企业以及研究机构迫切需要解决的难题。云计算致力于为人们提供快速且可靠的服务,而如何对任务进行高效合理的调度,实现系统全局最优化成为了限制云计算服务质量的关键因素。
迄今为止,人们已经提出许多社区发现方法,Mao等开发了一个工作流计算系统GreePipe,该系统可以将工作流描述自动转换成一系列基于Hadoop的MapReduce任务,实现生物研究领域复杂的数据分析逻辑,该工作流属于不可拆分工作流。对于可拆分批处理工作流,大多数工作都直接采用更细的粒度进行建模,并直接采用DAG进行表示,这样,丢失了批结构信息。虽然很多针对一般工作流的调度算法可以用于批处理工作流,但是,由于没有考虑批处理工作流的批结构特点,容易导致较低的资源利用率。Cai等提出了一种最少新租赁时间区间优先规则、最便宜执行成本优先规则和剩余时间片长度和执行时间匹配度优先规则的混合式启发算法,但该算法默认任务批与任务批之间是互相独立的并且初始资源分配方案随机性太大,容易导致算法收敛速度过慢,寻找最优解主要依赖虚拟机升级,对并行度关注较少。
可见,以上经典的算法都存在许多局限性,任务调度结果并不理想,而且复杂度较高,难以满足实际批处理科学工作流任务调度的要求。综上所述,现有的批处理科学工作流任务调度算法在任务调度成本和任务调度时间上都存在很大的提升空间。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于改进遗传算法的批处理科学工作流任务调度算法,该方法有利于降低批处理科学工作流任务调度过程中产生的任务调度成本以及任务调度时间。
本发明解决其技术问题是采取以下技术方案实现的:
一种基于改进遗传算法的批处理科学工作流任务调度算法,包括以下步骤:
步骤1.根据整数编码方式,生成初始种群;
步骤2.根据适应度函数值,不断进行遗传算法的交叉变异操作,淘汰劣质解,生成新的优质解;
步骤3.经过多次迭代根据适应度函数保留一个最优解;
步骤4.在不改变最优解关键路径的基础上进行非关键路径虚拟机使用数量收缩操作,得到最终解,并将最终解输出。
进一步,所述步骤1的具体实现方法为:按照时间成本比最优的虚拟机配置方式生成每个任务节点最佳的虚拟机配置方式,一部分初始解按照每个任务节点所对应需求类型的虚拟机类型进行随机生成,另一部分初始解按照完全随机的方式进行初始解生成。
进一步,在步骤2中,交叉编译操作采用如下交叉概率函数进行:
其中,K1,K2为常数,fmax为种群最大适应度值,favg为群体平均适应值,f′为要交叉的两个个体中较大个体的适应度值;
变异操作按照基本位变异方式,选取一定百分比的个体随机变异染色体编码的偶数位,变异方式是将该位数字随机加减1。
进一步,步骤4所述收缩操作是为了进一步优化遗传算法通过迭代次数所得出的最优解,在不改变关键路径的情况下将非关键路径上虚拟机使用数量按照使用周期单价由高到低不断收缩,直到再次收缩将改变原有解的关键路径时停止,输出最终解。
本发明的优点和积极效果是:
本发明设计合理,其根据整数编码方式,生成初始种群,进而不断进行遗传算法的交叉变异操作,根据适应度函数值,淘汰劣质解,生成新的优质解;经过多次迭代达到停止条件时根据适应度函数保留一个最优解;在不改变该最优解关键路径的基础上进行非关键路径虚拟机使用数量收缩操作,最终输出一个最终解;本发明能够高效地进行批处理科学工作流的任务调度,在任务调度成本控制和时间控制上得到大大提高,可广泛应用于多种不同规模的面向成本的云计算任务调度中。
附图说明
图1为本发明的处理流程图;
图2为亚马逊云真实实例的具体数据图;
图3为采用本发明在随机生成的任务节点数为5、10、15、20的批处理科学工作流执行任务调度与按比例划分截止期经典调度算法(由按比例划分表示)的所得解所需要的任务调度成本对比图。
图4为采用本发明在任务节点数为5的随机10个科学工作流生成的1000次初始解所需的平均调度成本与最终输出的最优解的平均值相比,任务调度所需的成本优化曲线图。
具体实施方式
以下结合附图对本发明实施例做进一步详述:
一种基于改进遗传算法的批处理科学工作流任务调度算法,如图1所示,包括以下步骤:
步骤A:根据整数编码方式,生成初始种群。
在本步骤中,为了保证初始解距离最优解距离不至于太远,按照时间成本比最优的虚拟机配置方式生成每个任务节点最佳的虚拟机配置方式,再进行全组合方式生成,在生成初始解得过程中我们引入时间成本比概念,即在升级虚拟机或增加虚拟机使用数量的同时多花费的费用与调度时间减少的比值。在生成初始解时我们选取一部分初始解按照选定的某个比值选取比该比值小的所有虚拟机类型与使用数量的组合,按照任务节点顺序以全组合方式生成初始解。同时为了进一步保证初始解相对较优,一部分初始解按照每个任务节点所对应需求类型的虚拟机类型进行随机生成,例如有些任务节点所包含的任务为数据密集型任务,有的则为计算密集型。为了保证初始解的随机性,有一部分初始解按照完全随机的方式进行初始解生成。
在本实施例中,随机生成了任务节点数量为5、10、15、20的批处理科学工作流进行模拟实验。虚拟机类型根据亚马逊云提供的真实数据(如图2所示)选取了五类具有代表性的虚拟机类型,租用周期单价也为亚马逊云的真实数据。
步骤B:根据适应度函数值,不断进行遗传算法的交叉变异操作,淘汰劣质解,生成新的优质解。
在本步骤中,由于编码方式为每两位数字代表一组信息,因此交叉掩码取值为随机偶数。交叉概率函数公式如下:
其中K1,K2为常数,fmax为种群最大适应度值,favg为群体平均适应值,f′为要交叉的两个个体中较大个体的适应度值。当f′大于等于favg应该让交叉概率P较小,防止适应度值大的个体统治群体,陷入局部最优解。反之则该让交叉概率较大,以重组出新的个体,扩展搜索空间。
变异操作按照基本位变异方式,选取一定百分比的个体随机变异染色体编码的偶数位,即代表使用某种虚拟机类型数量的表示位,变异方式是将该位数字随机加减1,这样做的好处是变异后的染色体适应度值变得更好的概率较高。
步骤C:经过多次迭代根据适应度函数保留一个最优解;
在本步骤中,每次迭代前的解的优秀程度主要依靠适应度函数值进行判定,而适应度函数主要与根据该解配置虚拟机资源所需要的任务调度成本与任务调度时间有关,计算第y个任务节点使用j个i类虚拟机的执行任务所需的总费用的计算公式如下:
其中a代表虚拟机的租用周期,ci代表第i类虚拟机单个租用周期的单价。
那么所有任务节点所需的执行任务调度所需的总费用为每个任务节点所需的任务调度费用相加的总和,公式如下:
任务调度总时间为该批处理科学工作流上关键路径节点任务调度所需时间之和。根据适应度函数不停的迭代,直到迭代次数达到上限,适应度函数公式如下:
fitness=w1·TotalCost+w2·Max(0,TotalTime-Tdeadline)
其中,w1与w2个为两个实数,两数相加之和为1,TotalCost代表按照该解进行任务调度所需要的任务调度总成本,TotalTime为总时间,Tdeadline为用户要求的任务调度截止期。所得解的适应度函数值越小认为该解越符合要求。
步骤D:在不改变最优解关键路径的基础上进行非关键路径虚拟机使用数量收缩操作。
在本步骤,所谓收缩操作是指为了进一步优化遗传算法通过迭代次数所得出的最优解,在不改变关键路径的情况下,将非关键路径上使用的虚拟机数量按照单价由高到低不断收缩,直到再次收缩将会改变该解的关键路径便停止收缩并输出最优解。
本步骤最终输出的解即为本次算法所得出的最优解。
综上所述,本发明将任务求解的过程分为初始化种群、种群的交叉变异、得到初步解、进行收缩操作、输出最终解五个阶段。首先,在生成初始解时我们选取三分一初始解为每个任务组选取比该阈值小的所有虚拟机使用数量中的总执行时间最短的方案,按照任务节点顺序以全组合方式生成初始解。同时为了进一步保证初始解相对较优,三分之一初始解按照每个任务节点所对应需求类型的虚拟机类型进行随机生成,例如有些任务节点所包含的任务为数据密集型任务,有的则为计算密集型。为了保证初始解的随机性,三分之一初始解按照完全随机的方式进行初始解生成。初始解生成后,不断进行迭代交叉变异的操作所得新的个体使用适应度函数判定新个体的好坏,目的是为了尽可能的搜索更优解。通过一定次数的迭代后输出经过当前迭代次数后所得的最优解。然后判定在该最优解配置下批处理科学工作流的关键路径,在不改变关键路径的情况下收缩非关键路径上任务节点使用的虚拟机数量,收缩规则为将非关键路径上使用的虚拟机数量按照单价由高到低不断收缩,直到再次收缩将会改变该解的关键路径便停止收缩并输出收缩后解,收缩后的解即为本算法该次输出的最优解。
为了证明本发明算法的优势,按下述方法进行模拟实验:
随机生成任务节点数量为5、10、15、20的批处理科学工作流进行并在亚马逊云提供的虚拟机类型真实数据下进行模拟实验。通过图3可以看出本发明算法在试验中所使用的所有任务任务节点数的情况下,改进遗传算法所得的最终任务调度方案都优于按比例划分截止期经典调度算法。通过图4可以看出,本发明从初始解开始通过不断的进行算法迭代最终得到最优解压缩了近90%的任务调度成本。结论证明,本发明算法在稳定性能,优化性能与按比例划分截止期经典调度算法相比有很大改进,可以有效节约批处理科学工作流的任务调度的成本,可应用于多种不同规模的面向成本的云计算任务调度。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
Claims (3)
1.一种基于改进遗传算法的批处理科学工作流任务调度方法,其特征在于:包括以下步骤:
步骤1.根据整数编码方式,生成初始种群;
步骤2.根据适应度函数值,不断进行遗传算法的交叉变异操作,淘汰劣质解,生成新的优质解;
步骤3.经过多次迭代根据适应度函数保留一个最优解;
步骤4.在不改变最优解关键路径的基础上进行非关键路径虚拟机使用数量收缩操作,得到最终解,并将最终解输出;
所述初始种群由如下三种初始解共同组成:一部分初始解按照选定的某个比值选取比该比值小的所有虚拟机类型与使用数量的组合,按照任务节点顺序以全组合方式生成初始解,所述比值是指在升级虚拟机或增加虚拟机使用数量时多花费的费用与调度时间减少的比值;一部分初始解按照每个任务节点所对应需求类型的虚拟机类型进行随机生成;一部分初始解按照完全随机的方式进行初始解生成;
所述适应度函数值采用如下公式计算:
fitness=w1·TotalCost+w2·Max(0,TotalTime-Tdeadline)
式中,w1与w2个为两个实数,两数相加之和为1,TotalCost为所有任务节点所需的执行任务调度所需的总费用,TotalTime为任务调度总时间,Tdeadline为用户要求的任务调度截止期;所述任务调度总时间为该批处理科学工作流上关键路径节点任务调度所需时间之和。
3.根据权利要求1所述的一种基于改进遗传算法的批处理科学工作流任务调度方法,其特征在于:步骤4所述收缩操作是为了进一步优化遗传算法通过迭代次数所得出的最优解,在不改变关键路径的情况下将非关键路径上虚拟机使用数量按照使用周期单价由高到低不断收缩,直到再次收缩将改变原有解的关键路径时停止,输出最终解。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810477096.9A CN108829501B (zh) | 2018-05-18 | 2018-05-18 | 一种基于改进遗传算法的批处理科学工作流任务调度算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810477096.9A CN108829501B (zh) | 2018-05-18 | 2018-05-18 | 一种基于改进遗传算法的批处理科学工作流任务调度算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108829501A CN108829501A (zh) | 2018-11-16 |
CN108829501B true CN108829501B (zh) | 2021-09-24 |
Family
ID=64148092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810477096.9A Active CN108829501B (zh) | 2018-05-18 | 2018-05-18 | 一种基于改进遗传算法的批处理科学工作流任务调度算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108829501B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110389819B (zh) * | 2019-06-24 | 2022-06-21 | 华中科技大学 | 一种计算密集型批处理任务的调度方法和系统 |
CN110928670B (zh) * | 2019-12-10 | 2022-04-08 | 浙江工商大学 | 云计算环境下基于偏序自适应遗传算法的工作流优化方法 |
CN113031522B (zh) * | 2019-12-25 | 2022-05-31 | 沈阳高精数控智能技术股份有限公司 | 适用于开放式数控系统周期性依赖任务的低功耗调度方法 |
CN111178529B (zh) * | 2019-12-31 | 2023-01-20 | 中科曙光国际信息产业有限公司 | 数据处理方法、装置、电子设备及可读存储介质 |
CN111400352B (zh) * | 2020-03-18 | 2020-11-17 | 北京三维天地科技股份有限公司 | 一种可进行数据批量处理的工作流引擎 |
CN113112084B (zh) * | 2020-07-31 | 2023-01-31 | 中国海洋大学 | 一种教练机后机身研发流程优化方法及装置 |
CN112181598B (zh) * | 2020-10-12 | 2022-12-09 | 内蒙古农业大学 | 基于改进遗传算法的云计算任务调度方法 |
CN112328380B (zh) * | 2020-11-10 | 2024-06-25 | 武汉理工大学 | 一种基于异构计算的任务调度方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8515777B1 (en) * | 2010-10-13 | 2013-08-20 | ProcessProxy Corporation | System and method for efficient provision of healthcare |
CN103279818A (zh) * | 2013-04-25 | 2013-09-04 | 中山大学 | 基于启发式遗传算法的云工作流调度方法 |
CN103902375A (zh) * | 2014-04-11 | 2014-07-02 | 北京工业大学 | 一种基于改进遗传算法的云任务调度方法 |
CN104035816A (zh) * | 2014-05-22 | 2014-09-10 | 南京信息工程大学 | 一种基于改进nsga-ii的云计算任务调度方法 |
-
2018
- 2018-05-18 CN CN201810477096.9A patent/CN108829501B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8515777B1 (en) * | 2010-10-13 | 2013-08-20 | ProcessProxy Corporation | System and method for efficient provision of healthcare |
CN103279818A (zh) * | 2013-04-25 | 2013-09-04 | 中山大学 | 基于启发式遗传算法的云工作流调度方法 |
CN103902375A (zh) * | 2014-04-11 | 2014-07-02 | 北京工业大学 | 一种基于改进遗传算法的云任务调度方法 |
CN104035816A (zh) * | 2014-05-22 | 2014-09-10 | 南京信息工程大学 | 一种基于改进nsga-ii的云计算任务调度方法 |
Non-Patent Citations (1)
Title |
---|
云计算环境下最小化运营开销的调度技术研究;李健;《中国博士学位论文全文数据库 信息科技辑》;20140115;I138-1 * |
Also Published As
Publication number | Publication date |
---|---|
CN108829501A (zh) | 2018-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829501B (zh) | 一种基于改进遗传算法的批处理科学工作流任务调度算法 | |
Hamad et al. | Genetic-based task scheduling algorithm in cloud computing environment | |
Cui et al. | Workflow tasks scheduling optimization based on genetic algorithm in clouds | |
Xu et al. | A multiple priority queueing genetic algorithm for task scheduling on heterogeneous computing systems | |
Xiao et al. | A cooperative coevolution hyper-heuristic framework for workflow scheduling problem | |
Iturriaga et al. | Multiobjective evolutionary algorithms for energy and service level scheduling in a federation of distributed datacenters | |
CN111813500B (zh) | 一种多目标云工作流调度方法及装置 | |
Li et al. | Fast and energy-aware resource provisioning and task scheduling for cloud systems | |
Nagar et al. | Time effective workflow scheduling using genetic algorithm in cloud computing | |
CN112379996A (zh) | 基于动态目标策略的云计算资源调度优化方法及应用 | |
Zhao et al. | Efficient task scheduling for Many Task Computing with resource attribute selection | |
Wang et al. | A Hybrid Genetic Algorithm with Integer Coding for Task Offloading in Edge-Cloud Cooperative Computing. | |
CN106802822A (zh) | 一种基于飞蛾算法的云数据中心认知资源调度方法 | |
Syed Abudhagir et al. | A novel dynamic reliability optimized resource scheduling algorithm for grid computing system | |
Nie | Research on Task Scheduling Strategy Based on Cloud Computing Environment | |
Zaman et al. | Evolutionary algorithm for project scheduling under irregular resource changes | |
CN114980216A (zh) | 基于移动边缘计算的依赖型任务卸载系统及方法 | |
CN115185651A (zh) | 一种基于云计算的工作流优化调度算法 | |
Li et al. | An improved differential evolution task scheduling algorithm based on cloud computing | |
CN110928670B (zh) | 云计算环境下基于偏序自适应遗传算法的工作流优化方法 | |
CN110908800B (zh) | 边云协同环境中基于调度熵的调度优化方法 | |
Krömer et al. | Evolving schedules of independent tasks by differential evolution | |
CN109492872A (zh) | 基于遗传算法的动态工作流调度方法 | |
Lu | Retracted: Improved Genetic Algorithm-Based Resource Scheduling Strategy in Cloud Computing | |
Kun-lun et al. | Improved GEP Algorithm for Task Scheduling in Cloud Computing |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220531 Address after: 300450 202-2 rongchuang Rongsheng square, Binhai Zhongguancun Science Park, economic and Technological Development Zone, Binhai New Area, Tianjin Patentee after: Tiankeda (Tianjin) Science Park Co.,Ltd. Address before: 300222 Tianjin University of Science and Technology, 1038 South Road, Tianjin, Hexi District, Dagu Patentee before: TIANJIN University OF SCIENCE AND TECHNOLOGY |
|
TR01 | Transfer of patent right |