CN112685138B - 云环境下基于多种群混合智能优化的多工作流调度方法 - Google Patents

云环境下基于多种群混合智能优化的多工作流调度方法 Download PDF

Info

Publication number
CN112685138B
CN112685138B CN202110025979.8A CN202110025979A CN112685138B CN 112685138 B CN112685138 B CN 112685138B CN 202110025979 A CN202110025979 A CN 202110025979A CN 112685138 B CN112685138 B CN 112685138B
Authority
CN
China
Prior art keywords
solution
population
elite
dominated
global
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
Application number
CN202110025979.8A
Other languages
English (en)
Other versions
CN112685138A (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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202110025979.8A priority Critical patent/CN112685138B/zh
Publication of CN112685138A publication Critical patent/CN112685138A/zh
Application granted granted Critical
Publication of CN112685138B publication Critical patent/CN112685138B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了云环境下基于多种群混合智能优化的多工作流调度方法,通过利用两个种群分别优化多工作流调度方案的总执行时间和成本两个目标,同时,采用第三个种群,对两个目标的优化进行适当平衡,通过三个种群侧重于搜索不同类型的非主导解,提高了精英解的多样性,有效克服了现有智能优化方法搜索随机性大的缺点,能够在满足用户截止期限条件下的情况下,找到较优的工作流调度方案集合。

Description

云环境下基于多种群混合智能优化的多工作流调度方法
技术领域
本发明属于云环境下的多工作流调度技术领域,具体涉及云环境下基于多种群混合智能优化的多工作流调度方法。
背景技术
近年来,云计算作为一种新型的分布式计算和资源服务提供模式正在被广泛应用。特别是,云计算的按使用付费、资源弹性配置等优势,使得云用户无需购买或维护任何本地服务器等硬件资源,即可通过网络访问可配置的共享计算资源池,并按需获取计算能力、存储空间和信息服务,为工作流应用提供了低成本的运行环境。因此,越来越多的复杂科学应用正在被部署或逐步迁移到云平台上执行。
科学应用通常被建模为工作流。所谓工作流调度,是指在满足用户约束的情况下,将一组子任务分配到合适的虚拟机资源集合上,以优化总的工作流执行时间、成本、能耗等多个目标,并在满足用户约束的情况下,提高用户的QoS。云用户数的快速增长对云数据中心的实时响应能力提出了越来越高的要求。为了同时满足多个用户不同的QoS需求,数据中心需要以批处理的方式对同一段时间内到达的多个工作流进行调度。因此,如何寻找合适的多工作流调度算法,以便在保证多个用户QoS需求的同时提高云提供商的利益,是当前云数据中心面临的重大挑战。
由于云环境下的工作流调度是一种带约束的多目标优化问题,现有技术中通常采用智能优化算法求解。智能优化算法是受人类智能、生物群体社会性或自然现象规律的启发,主要依赖随机搜索技术进行迭代优化,例如粒子群优化算法、遗传算法、模拟退火算法等。其中,粒子群优化算法具有强大的全局搜索与快速收敛能力,但是局部搜索性能差,且在迭代过程中容易陷入局部最优;模拟退火算法局部搜索能力强、运行时间短,但是缺乏有效的全局搜索机制;遗传算法能够很好地保持搜索多样性,但是收敛较慢、寻求最优解的耗时较长。
发明内容
有鉴于此,本发明提供了云环境下基于多种群混合智能优化的多工作流调度方法,实现了总执行时间和成本均最优的工作流调度。
本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法,包括以下步骤:
步骤1、确定具有截止期限约束的多个工作流各自的任务数及可用虚拟机数量;为所述工作流的所有任务分配子截止期限,按照优先调度具有紧截止限期的任务的原则,生成任务调度序列;
步骤2、定义三个种群P1、P2、P3,所述种群中的个体代表多工作流调度方案,所述个体的位置向量的维度代表所述工作流的任务,所述维度中的元素代表执行对应任务的虚拟机在虚拟机列表中的编号;向所述三个种群中插入初始引导解,利用所述工作流的任务数、可用虚拟机数量以及设定的种群规模初始化所述三个种群;计算所述种群中所有个体的适应度;所述适应度包括所述多工作流调度方案的工作流完工时间、多工作流的总体完工时间和执行成本;
步骤3、根据所述适应度对所述种群中的个体进行非支配排序得到精英解集,所述精英解集由满足所有工作流截止期限约束的非支配解构成;若不存在满足所有工作流截止期限约束的非支配解,则所述精英解集由所有的非支配解构成;
根据所述适应度对所有所述精英解集中的所有个体进行非支配排序得到全局精英解集,所述全局精英解集由满足所有工作流截止期限约束的非支配解构成;若不存在满足所有工作流截止期限约束的非支配解,则所述全局精英解集由所有的非支配解构成;
选择所述种群P1的所述精英解集中总完工时间最小的非支配解作为所述种群P1的局部引导解;选择所述种群P2的所述精英解集中多工作流总执行成本最小的非支配解作为所述种群P2的局部引导解;采用所述全局精英解集中的总完工时间最小与最大的非支配解,以及总执行成本最小与最大的非支配解,计算所述种群P3的所述精英解集中各非支配解的归一化目标值,选择具有最小的归一化目标值的非支配解作为所述种群P3的局部引导解;
采用所述全局精英解集中总完工时间最小的非支配解作为所述种群P1的全局引导解;采用所述全局精英解集中总执行花费最小的非支配解作为所述种群P2的全局引导解;采用所述全局精英解集中归一化目标值最小的非支配解作为所述种群P3的全局引导解;
步骤4、基于粒子群搜索算法更新所述种群的所述精英解集;
步骤5、将所有所述精英解集中的非支配解进行非支配排序,删除其中被支配且不满足截止期限约束的非支配解,如果所有非支配解均不满足截止期限约束,则保留所述精英解集中的所有非支配解,完成所述全局精英解集更新;更新所有所述种群的局部引导解与全局引导解;
步骤6、当迭代次数达到阈值时,输出所述全局精英解集所对应的所有多工作流调度方案,结束本流程;否则,返回步骤4。
进一步地,所述基于粒子群搜索算法更新所述种群的所述精英解集的过程包括:结合所述全局引导解和局部引导解,分别更新所有所述种群的所有个体;计算所述种群中所有个体的适应度,根据适应度进行非支配排序,删除被支配且不满足截止期限约束的非支配解,如果所述种群中的所有非支配解均不满足截止期限约束,则保留所述种群中的所有非支配解。
进一步地,所述步骤4中所述更新所述种群的精英解集为通过所述种群的交流与协作实现,具体过程包括:计算所述种群对所述全局精英解集的贡献度,将具有较大贡献度的两个所述种群中的精英解增加到具有最小贡献度的种群的精英解集中。
进一步地,所述方法还包括在所述步骤4更新所述种群的所述精英解集后,对所有所述精英解集分别进行遗传操作完成所述精英解集的再学习。
进一步地,所述步骤5中的更新所有所述种群的局部引导解与全局引导解,包括以下步骤:
步骤5.1、将所有所述精英解集中的非支配解,分别按照各自侧重的优化目标进行升序排列;
步骤5.2、从当前精英解集中排在前二分之一的非支配解中随机选择第i个非支配解作为较差解,再根据模拟退火算法的Metropolis接受规则,有概率地将所述较差解作为所述种群的新一代的局部引导解;遍历所有所述种群,执行步骤5.2更新所有种群的局部引导解;
步骤5.3、采用所述全局精英解集中总完工时间最小的非支配解作为所述种群P1的全局引导解;采用所述全局精英解集中总执行花费最小的非支配解作为所述种群P2的全局引导解;采用所述全局精英解集中归一化目标值最小的非支配解作为所述种群P3的全局引导解。
有益效果:
1、本发明利用两个种群分别优化多工作流调度方案的总执行时间和成本两个目标,同时,采用第三个种群,对两个目标的优化进行适当平衡,通过三个种群侧重于搜索不同类型的非主导解,提高了精英解的多样性,有效克服了现有智能优化方法搜索随机性大的缺点,能够在满足用户截止期限条件下的情况下,找到较优的工作流调度方案集合。
2、本发明改进了基本的粒子群搜索算法,即利用种群精英解集与全局精英解集分别对个体进行局部和全局引导,通过三个种群之间的交流与协作更新精英解集,不仅提升了种群的收敛效率,而且增强了算法的全局搜索能力。
3、本发明引入了基于遗传算法的精英学习策略,通过对各个种群的精英解集中的较优个体进行遗传操作,实现了在充分利用已有精英个体的同时增强了非主导解的多样性,进一步提高了所搜索解的质量。
4、本发明引入了模拟退火算法的Metropolis接受准则,在不影响各个种群进化方向的情况下,通过将种群精英解集中的较差个体有概率地接受为局部引导解,有效地减少了搜索陷入局部最优的可能性。
附图说明
图1为本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法的多工作流调度方法流程。
图2为本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法与其它算法在约束因子为0.25条件下的实验结果对比图。
图3为本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法与其它算法在约束因子为0.5条件下的实验结果对比图。
图4为本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法与其它算法在约束因子为0.75条件下的实验结果对比图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法,其基本思想是:利用三个具有不同目标优化侧重的种群,基于混合智能优化算法,对满足各个工作流截止期限约束的任务-虚拟机资源调度方案分别进行遍历搜索,寻找同时最小化多工作流总执行时间和成本的最优调度方案。
本发明提供的云环境下基于多种群混合智能优化的多工作流调度方法,其流程如图1所示,具体包括以下步骤:
步骤1、获取具有截止期限约束的多个工作流应用,按照向上排序的方法为各个工作流的所有任务分配子截止期限,并根据子截止期限对子任务进行升序排列,以优先调度具有紧截止限期的任务为原则,生成任务调度序列。
步骤2、种群初始化。
首先向三个种群P1、P2、P3插入预先设定好的初始引导解,其次利用多工作流的任务数、可用虚拟机数目以及预先定义各种群规模,随机初始化三个种群的个体,直至达到每个种群预先设定的个体数目。其中,每个个体对应一个多工作流应用调度方案,个体位置向量的每一维代表一个任务,每一维的元素代表执行此任务的虚拟机在虚拟机列表中的编号。
具体来说包括以下步骤:
步骤2.1、向三个种群P1、P2、P3插入预先设定好的初始引导解。
步骤2.1.1、将所有任务随机分配到同一类型的可选虚拟机上,产生一个初始解。对6种类型的虚拟机,有6个初始解init1~init6
步骤2.1.2、利用异构最早完成时间算法产生一个初始解init7
步骤2.1.3、随机选择init7中调度到不同类型虚拟机上的两个任务,交换其所分配的虚拟机,产生一个新的初始解init8
步骤2.1.4、将init7中所有分配到处理能力最高的虚拟机上的任务,分配到单位计算成本最高的虚拟机上,产生一个新的初始解init9
步骤2.1.5、将init1~init9加入初始引导解集合Init中。从Init中随机选择|Init/3|个解加入P1中;从Init的剩余个体中,再次随机选择|Init/3|个解加入P2中;将Init中剩余的所有个体加入P3中。
步骤2.2、利用多工作流的任务数、可用虚拟机数目以及预先定义各种群规模,随机初始化三个种群的个体,直至达到每个种群预先设定的个体数目。其中,每个个体对应一个多工作流应用调度方案,个体位置向量的每一维代表一个任务,每一维的元素代表执行此任务的虚拟机在虚拟机列表中的编号。
步骤3、初始化迭代次数,计算初始种群所有个体方案的适应度,即对初始种群中的每个个体,依次计算其相应的每个工作流完工时间、多工作流的总体完工时间和执行成本。
每个调度方案的总体完工时间TET、执行成本TEC如下:
Figure BDA0002890250270000071
Figure BDA0002890250270000072
式中,T表示多工作流G中任务的集合,
Figure BDA0002890250270000073
表示第i个工作流的第j个任务,
Figure BDA0002890250270000074
表示“向上取整”函数,TI表示虚拟机计费时间单位,
Figure BDA0002890250270000075
表示执行任务
Figure BDA0002890250270000076
的虚拟机
Figure BDA0002890250270000077
的租用单价;
Figure BDA0002890250270000078
Figure BDA0002890250270000079
分别表示任务
Figure BDA00028902502700000710
的完成时间和执行时间。任务
Figure BDA00028902502700000711
的开始执行时间
Figure BDA00028902502700000712
和结束执行时间
Figure BDA00028902502700000713
如下:
Figure BDA00028902502700000714
Figure BDA00028902502700000715
式中,
Figure BDA00028902502700000716
表示工作流Gi的入口任务
Figure BDA00028902502700000717
的开始执行时间;
Figure BDA00028902502700000718
是任务
Figure BDA00028902502700000719
的前继任务集合;
Figure BDA00028902502700000720
是任务
Figure BDA00028902502700000721
所分配的虚拟机;
Figure BDA00028902502700000722
表示虚拟机
Figure BDA00028902502700000723
的可用时间,如果虚拟机
Figure BDA00028902502700000724
未启动,
Figure BDA00028902502700000725
Figure BDA00028902502700000726
的启动时间,否则
Figure BDA00028902502700000727
Figure BDA00028902502700000728
上当前执行的最后一个任务的完工时间;
Figure BDA00028902502700000729
Figure BDA00028902502700000730
分别代表任务
Figure BDA00028902502700000731
的执行时间和输入数据的读取时间,计算如下:
Figure BDA0002890250270000081
Figure BDA0002890250270000082
Figure BDA0002890250270000083
式中,
Figure BDA0002890250270000084
表示任务
Figure BDA0002890250270000085
的指令长度;
Figure BDA0002890250270000086
表示虚拟机
Figure BDA0002890250270000087
的单位处理能力。bw表示虚拟机之间通信线路的带宽;
Figure BDA0002890250270000088
Figure BDA0002890250270000089
分别表示任务
Figure BDA00028902502700000810
与其前继任务
Figure BDA00028902502700000811
之间传输文件的大小和传输时间。其中,
Figure BDA00028902502700000812
分两种情况计算:若两个任务被调度在相同的虚拟机上,则传输时间
Figure BDA00028902502700000813
可忽略不计;若两个任务被调度到不同的虚拟机上,则传输时间
Figure BDA00028902502700000814
按传输带宽bw进行计算。
步骤4、初始化精英解集与引导解。
步骤4.1、初始化第h(h=1,2,3)个种群Ph的精英解集LEAh。对Ph中的所有个体进行非支配排序,并将满足所有工作流截止期限约束的非支配解加入到LEAh中。如果Ph中的非支配解均不满足截止期限约束,则将所有的非支配解保存到LEAh中。重复该步骤直至完成三个种群精英解集的初始化。
步骤4.2、初始化全局精英解集。对LEA1、LEA2、LEA3中的所有个体进行非支配排序,将满足所有工作流截止期限约束的非支配解保存至全局精英解集GEA中;如果LEA1、LEA2、LEA3中的所有解均不满足截止期限约束,则将所有的非支配个体保存至GEA中。
步骤4.3、初始化每个种群的局部引导解。选择LEA1中总完工时间最小的解作为P1的局部引导解lb1;选择LEA2中多工作流总执行成本最小的解作为P2的局部引导解lb2;分别找出GEA中总完工时间最小与最大的解并记为
Figure BDA00028902502700000815
Figure BDA00028902502700000816
同理,将总执行成本最小与最大的解,分别记为
Figure BDA00028902502700000817
计算LEA3中每个个体Xs的归一化目标值MC(Xs)如下:
Figure BDA0002890250270000091
最后,将计算得到的LEA3中归一化目标值最小的解作为P3的局部引导解lb3
步骤4.4、初始化每个种群的全局引导解。选择GEA中总完工时间最小的个体作为P1的全局引导解gb1;选择GEA中总执行花费最小的个体作为P2的全局引导解gb2;对GEA中每个个体的目标值进行归一化处理,并将归一化目标值最小的解作为P3的全局引导解gb3
步骤5、多种群协同进化搜索。
步骤5.1、基于粒子群搜索算法,对三个种群的所有个体,分别采用如下公式进行更新:
Figure BDA0002890250270000092
Figure BDA0002890250270000093
式中,
Figure BDA0002890250270000094
分别表示第h个种群中的第s个个体在第k代的速度及位置,
Figure BDA0002890250270000095
分别表示该个体更新后的速度及位置,pbh,s表示该个体的历史最优位置,lbh与gbh分别表示该种群当前的局部引导解与全局引导解;ω为惯性因子,ci,i=1,2,3是加速系数,ri,i=1,2,3为[0,1]之间的随机数。其中,第k代的ω与ci按照如下公式更新:
Figure BDA0002890250270000096
Figure BDA0002890250270000097
式中,ωmax、ωmin分别表示惯性因子的上、下限,cimax、cimin分别表示加速因子的上、下限,k是当前迭代次数,K是种群最大迭代次数。
步骤5.2、种群精英解集更新,即更新第h个种群Ph的精英解集LEAh。对Ph中的所有个体,计算其适应度值并将其加入到LEAh中。其次,对LEAh中的所有个体进行非支配排序:即删除被支配的以及不满足截止期限约束的个体,如果LEAh中的所有解均不满足截止期限约束,则保留LEAh中的所有非支配个体。重复该步骤,直到完成三个种群精英解集的更新。
步骤5.3、种群交流与协作。判断当前迭代次数k是否满足k%50=0。如果不满足,则转到步骤6;如果满足,则进行种群交流与协作如下:
计算每个种群对全局精英解集的贡献程度,即统计每个种群所提供的全局精英解个数Numh,h=1,2,3,记录贡献程序最低的种群
Figure BDA0002890250270000101
如果hmin=2,则转步骤5.3.2;如果hmin=3,则跳到步骤5.3.3。
步骤5.3.1、P1侧重于优化多工作流的总完工时间。将LEA1中最小的总完工时间记为
Figure BDA0002890250270000102
遍历LEA2与LEA3的每个个体Xind,如果
Figure BDA0002890250270000103
则将个体Xind加入到LEA1中,执行步骤6。
步骤5.3.2、P2侧重于优化多工作流的总执行成本。将LEA2中最小的总执行成本记为
Figure BDA0002890250270000104
遍历LEA1与LEA3的每个个体Xind,如果
Figure BDA0002890250270000105
则将个体Xind加入到LEA2中,执行步骤6。
步骤5.3.3、P3侧重于平衡多工作流的总完工时间和成本两个目标值。根据式(8)计算LEA1、LEA2、LEA3中所有个体的归一化目标值,并将LEA3中最小的归一化目标值记为
Figure BDA0002890250270000106
遍历LEA1与LEA2的每个个体Xind,如果
Figure BDA0002890250270000107
则将个体Xind加入到LEA3中。
步骤6、种群精英解集再学习。对每个种群的精英解集分别进行遗传操作,即选择、交叉、变异操作。
步骤6.1、初始化变量h,即h=1。
步骤6.2、计算LEAh中的个体数目|LEAh|,并判断|LEAh|是否大于2。若|LEAh|<2,则转至步骤6.5;否则对LEAh进行遗传操作。
步骤6.3、当|LEAh|小于预设的最大精英学习规模Emax时,对LEAh中所有精英个体进行二元锦标赛选择、单点交叉、单点变异操作,得到
Figure BDA0002890250270000111
当|LEAh|>Emax时,按照Ph侧重的优化目标对LEAh中的所有个体进行排序,选择前Emax个精英个体进行上述选择、交叉、变异操作,得到
Figure BDA0002890250270000112
步骤6.4、计算
Figure BDA0002890250270000113
中每个个体的适应度值,将LEAh
Figure BDA0002890250270000114
合并后统一进行非支配排序,并删除被主导的个体,得到种群新一代的LEAh
步骤6.5、判断h是否大于等于3。若不是,令h=h+1,返回步骤6.2。
步骤7、更新全局精英解集。将LEA1、LEA2、LEA3中的所有个体加入到GEA中,对GEA中的所有个体进行非支配排序,并删除被支配的个体以及不满足截止期限约束的个体。如果GEA中的所有非支配个体均不满足截止期限约束,则保留所有的非支配个体。
步骤8、更新每个种群的局部引导解与全局引导解。
步骤8.1、将LEA1、LEA2、LEA3中的个体,分别按照各自侧重的优化目标进行排序。将LEA1中的所有解按照总完工时间进行升序排列,得到排序后的集合LEA'1={lea1,j|j=1,2,3...|LEA1|}。将LEA2中的所有解按照总执行成本进行升序排列,得到排序后的集合LEA'2={lea2,j|j=1,2,3...|LEA2|}。对于P3,首先,找出GEA中总完工时间最小与最大的解
Figure BDA0002890250270000115
Figure BDA0002890250270000116
以及总执行成本最小与最大的解
Figure BDA0002890250270000117
Figure BDA0002890250270000118
然后,根据式(8),对LEA3中的每个个体Xs,计算其归一化目标值MC(Xs),并将LEA3中的所有个体按照归一化的目标值进行升序排列,得到排序后的集合LEA'3={lea3,j|j=1,2,3...|LEA3|}。
步骤8.2、更新第h个种群Ph的局部引导解。首先从LEA'h的前|LEA'h|/2个个体中随机选择第u个个体leah,u作为较差解,再根据模拟退火算法的Metropolis接受规则,有概率地将leah,u选择为Ph新一代的局部引导解,且Ph新一代的局部引导解
Figure BDA0002890250270000121
更新如下:
Figure BDA0002890250270000122
Figure BDA0002890250270000123
式中,u为(0,|LEA'h|/2)之间的随机整数;leah,1和leah,u分别是排序后的LEAh中的第1个和第u个个体;
Figure BDA0002890250270000124
是Ph的当代温度,
Figure BDA0002890250270000125
是(0,1)之间的随机浮点数;
Figure BDA0002890250270000126
为Ph上一代的局部引导解。重复该步骤,直至完成所有种群局部引导解的更新。
步骤8.3、更新每个种群的全局引导解,同步骤4.4。
步骤9、判断迭代次数是否达到预设的最大值。若是,则输出全局精英解集中的所有调度方案;否则,返回步骤5。
实施例:
为了检验本发明提出的利用多种群混合智能优化算法(MSC-HIO)进行云环境下多工作流任务调度的效果,本发明使用了云计算仿真工具WorkflowSim,选取了三种多目标优化调度算法进行对比:非支配排序遗传算法(NSGA-II)、多目标蚁群算法(MOACS)、基于内分泌的多种群协同进化多目标优化算法(ECMSMOO)。
选取中规模的四种类型的工作流,即Montage_50、Inspiral_50、Epigenomics_46和Cybershake_50,使用30个具有不同处理能力的虚拟机,并在3个约束因子(例如:0.25,0.5,0.75)下进行调度仿真实验。为避免调度结果的随机性,每种方法分别运行20次以进行统计分析。选取多工作流的总执行时间、总执行成本以及超体积作为调度性能指标,从多个方面衡量算法的调度性能,实验对比结果如图2至图4所示。
由图2、图3、图4可知,在不同的约束因子下,相对于已有算法,本发明提出的算法找到的精英解集更靠近真实的非支配前沿。虽然有一小部分调度方案被MOACS算法支配,但总体上看,本发明算法得到的调度方案具有更好的多样性;在所有的约束因子下,NSGA-II只能找到很少数满足截止期限约束的调度方案;尽管在约束宽松时,ECMSMOO能找到一定数量的可行调度方案,但是其得到的大多数调度方案被本发明提出的算法所主导。
超体积 MSC-HIO NSGA-II ECMSMOO MOACS
0.25 7290.398 2277.154 2522.251 6702.391
0.5 14385.449 6420.523 7433.652 12647.675
0.75 19550.564 9526.138 9918.284 18186.887
由上表可知,在不同的约束因子下,本发明提出的算法总能得到比其他算法更大的超体积,说明本发明算法找到的非主导解集具有很好的分布。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种云环境下基于多种群混合智能优化的多工作流调度方法,其特征在于,包括以下步骤:
步骤1、确定具有截止期限约束的多个工作流各自的任务数及可用虚拟机数量;为所述工作流的所有任务分配子截止期限,按照优先调度具有紧截止限期的任务的原则,生成任务调度序列;
步骤2、定义三个种群P1、P2、P3,所述种群中的个体代表多工作流调度方案,所述个体的位置向量的维度代表所述工作流的任务,所述维度中的元素代表执行对应任务的虚拟机在虚拟机列表中的编号;向所述三个种群中插入初始引导解,利用所述工作流的任务数、可用虚拟机数量以及设定的种群规模初始化所述三个种群;计算所述种群中所有个体的适应度,即对初始种群中的每个个体,依次计算其相应的每个工作流完工时间、多工作流的总体完工时间和执行成本;
步骤3、根据所述适应度对所述种群中的个体进行非支配排序得到精英解集,所述精英解集由满足所有工作流截止期限约束的非支配解构成;若不存在满足所有工作流截止期限约束的非支配解,则所述精英解集由所有的非支配解构成;
根据所述适应度对所有所述精英解集中的所有个体进行非支配排序得到全局精英解集,所述全局精英解集由满足所有工作流截止期限约束的非支配解构成;若不存在满足所有工作流截止期限约束的非支配解,则所述全局精英解集由所有的非支配解构成;
选择所述种群P1的所述精英解集中总完工时间最小的非支配解作为所述种群P1的局部引导解;选择所述种群P2的所述精英解集中多工作流总执行成本最小的非支配解作为所述种群P2的局部引导解;采用所述全局精英解集中的总完工时间最小与最大的非支配解,以及总执行成本最小与最大的非支配解,计算所述种群P3的所述精英解集中各非支配解的归一化目标值MC(Xs),计算公式如下:
Figure FDA0003700451710000021
其中,Xs为所述种群P3的所述精英解集中的非支配解,
Figure FDA0003700451710000022
为总完工时间最小的解,
Figure FDA0003700451710000023
为总完工时间最大的解,
Figure FDA0003700451710000024
为总执行成本最小的解,
Figure FDA0003700451710000025
为总执行成本最大的解,makespan()为解的总完工时间,cost()为解的执行成本;选择具有最小的归一化目标值的非支配解作为所述种群P3的局部引导解;
采用所述全局精英解集中总完工时间最小的非支配解作为所述种群P1的全局引导解;采用所述全局精英解集中总执行花费最小的非支配解作为所述种群P2的全局引导解;采用所述全局精英解集中归一化目标值最小的非支配解作为所述种群P3的全局引导解;
步骤4、基于粒子群搜索算法更新所述种群的所述精英解集;
步骤5、将所有所述精英解集中的非支配解进行非支配排序,删除其中被支配且不满足截止期限约束的非支配解,如果所有非支配解均不满足截止期限约束,则保留所述精英解集中的所有非支配解,完成所述全局精英解集更新;更新所有所述种群的局部引导解与全局引导解;
步骤6、当迭代次数达到阈值时,输出所述全局精英解集所对应的所有多工作流调度方案,结束本流程;否则,返回步骤4。
2.根据权利要求1所述的多工作流调度方法,其特征在于,所述基于粒子群搜索算法更新所述种群的所述精英解集的过程包括:结合所述全局引导解和局部引导解,分别更新所有所述种群的所有个体;计算所述种群中所有个体的适应度,根据适应度进行非支配排序,删除被支配且不满足截止期限约束的非支配解,如果所述种群中的所有非支配解均不满足截止期限约束,则保留所述种群中的所有非支配解。
3.根据权利要求2所述的多工作流调度方法,其特征在于,所述步骤4中所述更新所述种群的精英解集为通过所述种群的交流与协作实现,具体过程包括:计算所述种群对所述全局精英解集的贡献度,将具有较大贡献度的两个所述种群中的精英解增加到具有最小贡献度的种群的精英解集中。
4.根据权利要求1所述的多工作流调度方法,其特征在于,所述方法还包括在所述步骤4更新所述种群的所述精英解集后,对所有所述精英解集分别进行遗传操作完成所述精英解集的再学习。
5.根据权利要求1所述的多工作流调度方法,其特征在于,所述步骤5中的更新所有所述种群的局部引导解与全局引导解,包括以下步骤:
步骤5.1、将所有所述精英解集中的非支配解,分别按照各自侧重的优化目标进行升序排列;
步骤5.2、从当前精英解集中排在前二分之一的非支配解中随机选择第i个非支配解作为较差解,再根据模拟退火算法的Metropolis接受规则,有概率地将所述较差解作为所述种群的新一代的局部引导解;遍历所有所述种群,执行步骤5.2更新所有种群的局部引导解;
步骤5.3、采用所述全局精英解集中总完工时间最小的非支配解作为所述种群P1的全局引导解;采用所述全局精英解集中总执行花费最小的非支配解作为所述种群P2的全局引导解;采用所述全局精英解集中归一化目标值最小的非支配解作为所述种群P3的全局引导解。
CN202110025979.8A 2021-01-08 2021-01-08 云环境下基于多种群混合智能优化的多工作流调度方法 Active CN112685138B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110025979.8A CN112685138B (zh) 2021-01-08 2021-01-08 云环境下基于多种群混合智能优化的多工作流调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110025979.8A CN112685138B (zh) 2021-01-08 2021-01-08 云环境下基于多种群混合智能优化的多工作流调度方法

Publications (2)

Publication Number Publication Date
CN112685138A CN112685138A (zh) 2021-04-20
CN112685138B true CN112685138B (zh) 2022-08-23

Family

ID=75456753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110025979.8A Active CN112685138B (zh) 2021-01-08 2021-01-08 云环境下基于多种群混合智能优化的多工作流调度方法

Country Status (1)

Country Link
CN (1) CN112685138B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905307B (zh) * 2021-04-22 2022-07-22 北京理工大学 一种基于贫富优化算法的多目标云工作流调度方法
CN113325896B (zh) * 2021-05-31 2022-03-01 浙江工业大学 一种智能零售机的多目标温度优化控制方法
CN114595914A (zh) * 2021-07-27 2022-06-07 北方工业大学 一种面向云环境的工作流调度方法及系统
CN116307296B (zh) * 2023-05-22 2023-09-29 南京航空航天大学 云上资源优化配置方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710372A (zh) * 2018-11-12 2019-05-03 北京理工大学 一种基于猫头鹰搜索算法的计算密集型云工作流调度方法
CN109992355A (zh) * 2019-01-30 2019-07-09 北京理工大学 一种基于改进非支配遗传算法的多目标云工作流调度方法
CN111046559A (zh) * 2019-12-12 2020-04-21 南京邮电大学通达学院 一种基于双层精英协同进化的多目标优化方法
CN112180853A (zh) * 2020-09-14 2021-01-05 上海电机学院 基于多种群策略的柔性作业车间调度混合优化方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200080406A1 (en) * 2018-09-06 2020-03-12 American University Of Beirut Black hole particle swarm optimization for optimal well placement in field development planning and methods of use

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710372A (zh) * 2018-11-12 2019-05-03 北京理工大学 一种基于猫头鹰搜索算法的计算密集型云工作流调度方法
CN109992355A (zh) * 2019-01-30 2019-07-09 北京理工大学 一种基于改进非支配遗传算法的多目标云工作流调度方法
CN111046559A (zh) * 2019-12-12 2020-04-21 南京邮电大学通达学院 一种基于双层精英协同进化的多目标优化方法
CN112180853A (zh) * 2020-09-14 2021-01-05 上海电机学院 基于多种群策略的柔性作业车间调度混合优化方法

Also Published As

Publication number Publication date
CN112685138A (zh) 2021-04-20

Similar Documents

Publication Publication Date Title
CN112685138B (zh) 云环境下基于多种群混合智能优化的多工作流调度方法
Hamad et al. Genetic-based task scheduling algorithm in cloud computing environment
CN107301500A (zh) 一种基于关键路径任务前瞻的工作流调度方法
CN109840154A (zh) 一种移动云环境下基于任务依赖的计算迁移方法
CN109491761A (zh) 基于eda-ga混合算法的云计算多目标任务调度方法
CN104572297A (zh) 一种基于遗传算法的Hadoop作业调度方法
CN108427602B (zh) 一种分布式计算任务的协同调度方法及装置
CN109445386A (zh) 一种基于onba的云制造任务最短生产时间调度方法
CN110888728B (zh) 一种Kettle集群服务器的任务调度方法
ABDULKAREEM et al. OPTIMIZATION OF LOAD BALANCING ALGORITHMS TO DEAL WITH DDOS ATTACKS USING WHALE‎ OPTIMIZATION ALGORITHM
CN109710372A (zh) 一种基于猫头鹰搜索算法的计算密集型云工作流调度方法
CN115220898A (zh) 一种基于深度强化学习的任务调度方法、系统、装置及介质
Samriya et al. Spider monkey optimization based energy-efficient resource allocation in cloud environment
CN108304253A (zh) 基于缓存感知和数据本地性的map任务调度方法
Karimunnisa et al. Task Classification and Scheduling Using Enhanced Coot Optimization in Cloud Computing.
Garg et al. Enhancing the discrete particle swarm optimization based workflow grid scheduling using hierarchical structure
CN108958919A (zh) 一种云计算中有期限约束的多dag任务调度费用公平性评估模型
CN110119317B (zh) 一种基于遗传算法的云计算任务调度方法和系统
CN110633784B (zh) 一种多规则人工蜂群改进算法
CN112905307B (zh) 一种基于贫富优化算法的多目标云工作流调度方法
CN114980216A (zh) 基于移动边缘计算的依赖型任务卸载系统及方法
CN114691327A (zh) 面向两阶段任务调度的多目标群智能优化方法与系统
CN114035954A (zh) 一种基于ddqn算法的调度系统和任务调度系统
Javadi-Moghaddam et al. Resource allocation in cloud computing using advanced imperialist competitive algorithm.
Li et al. IPSOMC: An improved particle swarm optimization and membrane computing based algorithm for 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