CN110969362B - 一种云计算系统下多目标任务调度方法及系统 - Google Patents
一种云计算系统下多目标任务调度方法及系统 Download PDFInfo
- Publication number
- CN110969362B CN110969362B CN201911252905.7A CN201911252905A CN110969362B CN 110969362 B CN110969362 B CN 110969362B CN 201911252905 A CN201911252905 A CN 201911252905A CN 110969362 B CN110969362 B CN 110969362B
- Authority
- CN
- China
- Prior art keywords
- solution
- neighborhood
- scheduling
- cloud computing
- algorithm
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial 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]
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Artificial Intelligence (AREA)
- Operations Research (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开公开了一种云计算系统下多目标任务调度方法及系统,包括:以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;利用得到的调度优化方案对云计算系统下的任务进行调度。采用用混合离散人工蜂群算法,优化了云计算系统下的柔性任务调度问题,建模为HFS模型;嵌入8种扰动结构增强了算法的开发能力;自适应扰动结构平衡了开发和探索能力,改进的跟随蜂机制具有深度挖掘功能,可以进一步增强局部搜索能力;设计良好的侦察蜂算法可以提高算法的收敛能力。
Description
技术领域
本公开涉及多目标优化技术领域,特别是涉及一种云计算系统下多目标任务调度方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
在云计算系统中,用户提出的作业应该分配给有能力的设备,并且通常每个作业都包含几个连续的任务,这些任务应该在不同或相同的设备上按一定的顺序处理。整个过程可以建模为混合流水车间调度(HFS)问题。云系统中的任务调度近年来得到了研究,如Wang等人开发了用于异构计算和云调度的人工群智能的多学科方法。然而,已发表的文献主要讨论云系统中的任务分配,而没有考虑云系统中的灵活能力。Li等人在Map/Reduce计算框架中开发了几种周期性批处理作业调度启发式方法,其中任务调度被建模为具有依赖于调度的设置时间的两阶段HFS。然而,考虑到实际应用中的多目标特征,该模型还需要进行扩展。
许多类型的优化问题都是NP-hard问题,许多类型的启发式或元启发式算法被提出来解决这些具有单目标和多目标的问题,在这些元启发式算法中,人工蜂群(ABC)最近被开发出来,并且已经被证实对于许多类型的问题是有效的。
为了解决单目标优化问题,已经使用了多种类型的元启发式算法。Pan等人针对分布式装配排列流车间调度问题开发了构造启发式和元启发式。Li等人针对炼钢系统中实际的HFS问题,设计了一种结合果蝇优化算法(FOA)和迭代贪婪(IG)算法的混合算法。在这些元启发式算法中,具有三种类型的蜜蜂的ABC算法(即雇佣蜂、跟随蜂和侦察蜂)也被广泛用于解决优化问题,例如数值函数优化,具有动态操作跳过的混合柔性流水车间,以及分布式流水车间调度问题(DFSSP)。其他类型的元启发式算法也被用于解决不同类型的优化问题,例如基于教学的优化(TLBO)、入侵杂草优化(IWO)和IG算法。通过关于元启发式算法的文献中,有许多类型的元启发式算法可以用于解决具有单个目标的多种类型的优化问题。如何利用问题特征设计特定于问题的算子是改进元启发式算法的关键问题。
大多数已发表的多目标优化算法可分为三个方面,即基于Pareto的方法,基于分解的方法,以及将多目标问题转化为单目标问题的方法。通过应用基于Pareto的多目标优化算法,已经解决了许多类型的优化问题。为了解决多目标柔性作业车间调度问题(FJSSP),已经提出了几种元启发式算法,如基于Pareto的禁忌搜索(TS)算法和基于Pareto的ABC算法。Yu等人针对乙烯裂解炉系统问题设计了一种多目标TLBO算法。文献研究了多目标多周期逆向物流网络设计问题。Yi等人为铝电解生产过程开发了一种多目标细菌觅食优化算法。对于Hadoop中的任务调度问题,也开发了其他类型的多目标优化算法。
基于分解的多目标进化算法(MOEA/D)已经被证明是另一种有效的多目标优化算法。Yuan等人设计了一种启发式方法来平衡基于分解的多目标优化器的收敛性和多样性。Wang等人研究了MOEA/D的约束子问题处理方法。Wang等人通过使用Pareto自适应标量化方法开发了基于分解的算法。可以发现,MOEA/D算法主要用于连续优化问题,考虑MOEA/D算法求解调度问题的文献较少。
近年来,FSSP得到了研究和开发。HFS调度问题是经典FSSP的一个分支,因此,HFS比经典FSSP困难,需要从一组平行机中选择合适的机器。Ruiz和Vázquez-Rodríguez报告了2010年前对文献的详细评论。最近,已经为HFS问题设计了许多元启发式算法,例如候鸟优化(MBO)算法,混合ABC算法,结合蚂蚁系统和遗传算法的混合算法,以及可变邻域搜索(VNS)算法。此外,一些文献也将现实的生产过程建模为HFS模型,并使用元启发式进行求解。值得注意的是,许多文献都考虑了工业应用中的任务调度问题;然而,在文献中考虑云系统中的柔性任务调度问题的研究较少,特别是在多目标情况下。
发明内容
为了解决上述问题,本公开提出了一种云计算系统下多目标任务调度方法及系统,采用用混合离散人工蜂群算法,优化了云计算系统下的柔性任务调度问题,建模为HFS模型;嵌入8种扰动结构增强了算法的开发能力;自适应扰动结构平衡了开发和探索能力,改进的跟随蜂机制具有深度挖掘功能,可以进一步增强局部搜索能力;设计良好的侦察蜂算法可以提高算法的收敛能力。
为了实现上述目的,本公开采用如下技术方案:
第一方面,本公开提供一种云计算系统下多目标任务调度方法,包括:
以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;
采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;
利用得到的调度优化方案对云计算系统下的任务进行调度。
作为可能的一些实现方式,所述最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量的目标函数,分别为:
其中,cis是阶段i中任务s的完成时间、cmax是所有任务的最大完成时间、Wk是设备k的工作负载、Wmax是所有设备的最大工作负载、Tw是所有设备的总工作负载;m是设备数、n是作业数;
对三种目标函数进行加权得到加权目标函数:
F(c)=w1×F1(c)+w2×F2(c)+w3×F3(c)
w1+w2+w3=1,0≤w1,w2,w3≤1,
其中,w1,w2和w3表示权重系数。
作为可能的一些实现方式,所述混合车间调度模型的约束条件是:
限制每个操作的释放时间;
保证在任何设备中没有操作重叠,即后续操作必须等待前置操作的完成;
确保对于一个操作只能选择一个设备。
作为可能的一些实现方式,所述求解的具体过程包括:
采用初始化策略生成初始化种群;
在雇佣蜂阶段,对初始化种群中每个解生成相应的邻域解,评估新生成的邻域解并初始化自适应邻域结构;
在跟随蜂阶段,采用锦标赛选择方法选择当前较优解,对较优解生成相应的邻域解,评估该邻域解并更新自适应邻域结构,并对当前较优解执行深度开发;
在侦查蜂阶段,使用八种扰动结构生成八个邻域解,选择最优解并与跟随蜂阶段得到的邻域解进行比较,若最优解优于跟随蜂阶段得到的邻域解,则最优解取代后者;
在深度开发阶段,基于当前最优解进行深度开发过程,以最优解取代最差解。
作为可能的一些实现方式,所述扰动结构包括单交换结构、双交换结构、单点互换结构、单插入结构、双插入结构、头尾插入结构和单点插入结构。
作为可能的一些实现方式,深度挖掘启发式包括:生成一个随机数,将其与预设的系统参数进行比较,若随机数小于系统参数,则基于当前解执行深度开发过程;
利用自适应扰动结构中获胜的邻域结构生成系统参数的邻域解;
评估每个邻域解,并且若其适应值优于前一个邻域解,用所选择的扰动结构更新自适应扰动结构,以及用邻域解替换当前解。
第二方面,本公开提供一种云计算系统下多目标任务调度系统,包括:
调度优化模型构建模块,其用于以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;
调度优化方案求解模块,其用于采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;
调度模块,其用于利用得到的调度优化方案对云计算系统下的任务进行调度。
第三方面,本公开提供一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行所述一种云计算系统下多目标任务调度方法的步骤。
第四方面,本公开提供一种终端设备,包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行所述一种云计算系统下多目标任务调度方法的步骤。
与现有技术相比,本公开的有益效果为:
在多目标HFS问题中,同时考虑三个目标,即最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量;考虑两种不同类型的HFS,即具有相同并行机的HFS和具有不相关机器的HFS,提出几种不同类型的扰动结构以增强搜索能力。
改进的自适应扰动结构被嵌入到所提出的算法中,以平衡开发和探索能力;应用简单但有效的选择和更新方法来增强开发过程。
为了进一步提高开发能力,设计了一种深度开发算子,利用不同的局部搜索方法,设计了一种改进的搜索算法,以寻找最优的食物源或废弃解,提高了算法的收敛能力。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1.云计算系统中的一个示例任务调度问题图;
图2.示例解决方案的甘特图;
图3(A).扰动结构N1图;
图3(B).扰动结构N3图;
图3(C).扰动结构N4图;
图3(D).扰动结构N5图;
图3(E).扰动结构N7图;
图3(F).扰动结构N8图;
图4.问题2(f1=297,f2=191,f3=1628)的最佳解决方案的甘特图;
图5.所提出的高效算法的多个比较结果图;
图6.“t30c5e9”的收敛曲线图;
图7为本公开方法流程图。
具体实施方式:
下面结合附图与实施例对本公开做进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本公开使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例1
本公开提供一种云计算系统下多目标任务调度方法,包括:
S1:将云计算系统下的柔性任务调度问题建模为混合车间调度(HFS)问题,同时考虑两种不同类型的HFS;
S2:确定优化的目标及约束条件;
S3:采用混合离散人工蜂群(ABC)算法进行求解;
S4:提出几种不同类型的扰动结构以增强搜索能力;
S5:嵌入了一种改进的自适应扰动结构,设计了一种深度开发算子;
S6:验证上述方法对解决云计算系统中不同设备具有不同处理能力的HFS问题的有效性。
文献中的许多研究普遍认为任务调度对云计算环境下的性能有显着影响。例如,Li等人研究了Map/Reduce计算框架中的任务调度问题,Map/Reduce计算框架是云计算系统中的典型框架。在任务调度问题中,通常有五个阶段,即准备(输入所涉及的数据)、映射(过滤和排序数据)、洗牌(重新分配映射的数据)、减少(处理每组重新分配的数据)和输出(收集减少的输出)。整个五个阶段在Map/Reduce集群上进行处理。在Map/Reduce集群中,许多云节点或机器是以并行样式构建的,其中每个节点提供一个或多个插槽。每种槽类型的成员通常构建一组相同的机器。分配给Map/Reduce集群的一组作业应通过五个阶段进行处理。因此,任务调度过程一般可以被认为是一个HFS问题,这是一个NP-hard问题。
所述S1中:针对云计算系统下的柔性任务调度问题,并采用混合离散人工蜂群(ABC)算法进行求解,其中所考虑的问题首先被建模为混合车间调度(HFS)问题,同时考虑单个目标和多个目标,在多目标HFS问题中,同时考虑三个目标,即最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量;考虑两种不同类型的HFS,即具有相同并行机的HFS和具有不相关机器的HFS。
在本公开中,与经典ABC算法一样,包括三种类型的人工蜜蜂,即雇佣蜂、跟随蜂和侦察蜂,每个解决方案都表示为整数字符串。为了考虑问题的特征,提出几种不同类型的扰动结构以增强搜索能力;改进的自适应扰动结构被嵌入到所提出的算法中,以平衡开发和探索能力;应用简单但有效的选择和更新方法来增强开发过程;为了进一步提高开发能力,设计了一种深度开发算子;利用不同的局部搜索方法,设计了一种改进的搜索算法,以寻找最优的食物源或废弃解,提高了算法的收敛能力。
本公开考虑经典云平台中常用的柔性任务调度问题,在所考虑的问题中,有n个作业和m个设备,其中每个作业包含一定数量的任务,并且每个任务应该在从某种类型的候选设备中选择的一个设备上处理。
所述S2中的约束条件分别是:a.在给定时间,每个任务应在恰好一个选定的设备上进行处理,并且每个设备应仅处理一个任务;
b.将每个作业的释放时间和每个设备的最早可用时间设置为零;
c.一旦任务处理完毕,任何中断都将被忽略,即同一设备上的后续任务只有在当前任务完成后才能开始处理;
d.不考虑相同设备上连续任务之间的设置时间,也不考虑属于同一作业的两个连续任务之间的设置时间;
e.每个分配的设备上的每个任务的处理时间是预定义的和确定性的;
f.不考虑两个设备之间的传输时间;
g.每个任务在每个阶段都有几个子任务。
在本实施例中,假设任务之间没有加工顺序依赖关系,任务之间的通信时间包括在相应的处理时间中,并且任务的数据大小的输入和输出时间也包括在处理时间中。
云环境下任务调度的多目标优化问题建模,参数和符号表示如表1所示:
表1
目标函数
s.t.
sih≥cij-L·yijhk,for i=1,……,s;k∈Mi;all pair of tasks(j,h) (5)
sij≥0,for i=1,……,s-1;j=1,……,n (7)
Cj,i≥0,for i=1,……,s;j=1,……,n (8)
pijk≥0,for j=1,……,n;i=1,……,s;k∈M (9)
在公式(1)、(2)和(3)中分别考虑了三种类型的目标;约束(4)限制每个操作的释放时间;约束(5)保证在任何设备中没有操作重叠,即后继操作必须等待前置操作的完成;约束(6)确保对于一个操作只能选择一个设备;
加权目标函数给出如下:
w1,w2和w3表示权重系数,并且基于来自现实数据的权重系数,将三个权重系数值设置为0.5、0.3和0.2。
对于云计算系统中灵活的任务调度问题,本公开基于排列的编码方法,即为每个作业分配一个整数,每个作业的顺序代表处理顺序。对于图1中给出的示例问题,有五个作业要通过三个阶段来处理,并且在每个阶段中有几个并行设备。表2给出了每个设备上每个任务的处理时间,其中三个阶段中分别有3个、2个和2个并行设备。给定一个解决方案{1,2,3,4,5},这意味着在云系统的第一阶段,作业的处理顺序是J1,J2,J3,J4和J5,一旦确定了调度顺序,接下来的工作就是分配一个用于处理它的候选设备。本公开利用简单而有效的方法来分配处理任务的设备,其给出如下:
(1)在第一阶段,将每个任务分配给完成时间最短的设备,即设备尽可能早用;
(2)任务在当前阶段完成工作后,立即转移到下一阶段,选择空闲时间最早的设备;
(3)图2给出了图1中的示例问题的给定解决方案{1,2,3,4,5}的一个甘特图,其中在第一阶段,根据它们在解决方案中的出现来处理所有任务。然而,在接下来的阶段中,处理顺序并不严格按照它们在解决方案表示中的出现顺序。例如,在第二阶段中,在作业J3的第二任务之后处理作业J1的第二任务。主要原因是作业J3的第一个任务的完成时间早于作业J1。
表2处理时间表
所述S3:步骤1,对所有群体以随机方式进行初始化,评估它并将其插入到初始种群中;
步骤2,雇佣蜂阶段:
(1)将第i只受雇佣蜂设置在当前种群中的第i个食物源上,并执行开发任务;
(2)评估新生成的解并初始化自适应邻域结构;
步骤3,跟随蜂阶段:
(1)在当前种群中随机选择三个解决方案,使用锦标赛选择方法选择最好的一个作为旁观者的食物来源;
(2)围绕所选食物源执行开发任务;
(3)评估新生成的解并更新自适应邻域结构;
(4)围绕通过上述步骤找到的新生成的食物源执行深度开发;
步骤4,侦察蜂阶段:
(1)如果群体中的解决方案在限制试验期间没有得到改善,则放弃它;
(2)通过使用扰动结构生成八个相邻的解,并选择最佳相邻解决方案作为侦察蜜来替换当前解决方案;
步骤5,深度开发阶段:
(1)围绕到目前为止发现的最好的食物来源进行深度开发过程;
(2)用最好的食物来源取代目前种群中最差的食物来源。
所述S4:提出八种扰动结构:
(1)单交换结构,由N1表示,如图3(A)所示。N1的主要过程是选择两个作业号并以随机方式交换它们;
(2)双交换结构,由N2表示。执行一个交换结构两次。;
(3)双交换结构,从第一个到最后一个互换结构,由N3表示,如图3(B)所示。(1)在当前解决方案中,随机选择两个名为TR1和TR2的任务;(2)将第一个任务与TR1互换,最后一个任务与TR2互换;
(4)单点互换结构,由N4表示,如图3(C)所示。N4的主要过程是将两个直接的前置任务和后继任务交换为解决方案表示中随机选择的任务号;
(5)单插入结构,由N5表示,如图3(D)所示。(1)在R1和R2位置随机选择两个元素,其中R1<R2;(2)将任务插入调度字符串中R1之前的R2位置;
(6)双插入结构,由N6表示。两次执行一个插入结构;
(7)头尾插入结构,由N7表示,如图3(E)所示。(1)随机生成两个位置r1和r2,其中r1<r2;(2)将r1处的任务插入到头部位置之前,将r2处的任务插入到尾部位置之后;
(8)单点插入结构,由N8表示,如图3(F)所示,将任务插入R1之后,正好在R1之前的位置。
所述S5:为了平衡所提出算法的探索和开发能力,提出自适应扰动结构,以在进化阶段应用不同的扰动结构。改进的自适应扰动结构被嵌入到所提出的算法中,以平衡开发和探索能力。应用简单但有效的选择和更新方法来增强开发过程。为了进一步提高开发能力,设计了一种深度开发算子。利用不同的局部搜索方法,设计了一种改进的搜索算法,以寻找最优的食物源或废弃解,提高了算法的收敛能力。
深度开发阶段:首先,随机生成一个数r,用于决定是否围绕当前解进行进一步搜索,执行深度开发过程的条件为r<DEp,其中DEp为系统参数;
其次,在深度开发过程中,利用自适应扰动结构中获胜的邻域结构生成DEt邻域解;
最后,评估每个相邻解决方案,并且如果其适应值优于前一个解决方案,然后执行以下任务:用所选择的扰动结构更新自适应扰动结构;以及用相邻解决方案替换当前食物源。
为了测试所提出算法的性能,在c++中实现了所提出的ABC算法(以下简称LABC,即Li等人在本研究中提出的ABC算法),并且运行环境是在配备英特尔酷睿i5 3.3GHz处理器和4GB内存的PC上。比较的算法包括PSO,分布估计算法,人工免疫系统(AIS)算法,蚁群优化(ACO)算法,分支定界(B&B)算法,PABC算法,D ABC算法和H ABC算法。实验参数设置为与文献中相同,为了测试比较算法的性能,选择了四种类型的实例:(1)77个Carlier和Neron的基准问题;(2)十个较难的问题;(3)钢铁工业的两个实际生产问题;(4)34台扩展的无关机器任务调度问题。
(a.)设置参数:经过详细的测试和分析,参数设置如下:(1)群体大小:psize=8;(2)雇佣蜂的数量:NEB=8;(3)跟随蜂的数量:NOB=8;(4)侦察蜂的数量:NSB=1;(5)深度开发概率:DEP=0.1;(6)深度开发循环时间:DEt=nⅹn;(7)PL的长度10;(8)限制循环次数不能通过食物来源进一步改善:lmax=20;(9)停止条件:最大计算时间超过150秒,或者直到达到最低界限(LB)。
(b.)单目标87个问题的比较:测试提出的LABC算法,在每个阶段用相同的机器来解决两种基准测试,即77个Carlier和Neron的基准问题,以及十个大规模问题。
(c.)10个作业问题的比较:表3给出了第一种类型实例的比较结果,第一列显示实例名称,后面是每个实例的最低界限;接下来的两列报告来自LABC的结果,以下结果收集自PSO、AIS、ACO、B&B;每个算法包含两列,显示每个问题的最大完工时间和计算CPU时间;列出比较的算法之间差异的偏差值报告在以下五列中,计算方法如下。
其中是通过比较算法获得的Makespan,LB是每个实例的最低界限。
从表3可以看出:(1)提出的LABC可以在很短的计算时间内达到前11个问题的LB值;(2)为了解决以下12个问题,即“j10c5c1”到“j10c5d6”,除了基准“j10c5c3”外,LABC获得了11个LB值;(3)对于解决以下12个基准,LABC以较快的速度达到所有LB值;(4)对于“j10c10c1”到“j10c10c6”,LABC可以获得接近最优的结果;(5)对于给定的41个10个作业问题,除了“j10c5c3”和“j10c10c2”实例外,LABC获得与PSO相同的Cmax值。然而,考虑到平均计算时间,LABC与粒子群算法具有竞争力:平均每个问题消耗约0.29秒,而粒子群算法耗时1.236秒;(6)平均而言,LABC算法的最优值为83%,与其他高效算法相比,具有较强的竞争力。
表3 10个作业问题的比较结果(+)表示LABC获得的更好或最佳结果
(d.)15个工作问题的比较:表4给出了求解36个15个工件实例的比较结果,得出结论:(1)对于“j15c5a1”到“j15c5b6”,LABC在很短的时间内获得所有最佳值;(2)以下12个实例比较复杂,比“j15c5a1”到“j15c5b6”实例困难得多,LABC表现出极具竞争力的性能,以非常快的速度获得非常接近最优值的值。例如,对于给定的12个实例,本公开算法获得了6个最优值,类似于PSO,并且优于AIS和B&B。与PSO相比,所提出的LABC在考虑CPU时间的情况下性能更好;(3)对于最后12个实例,本公开算法也显示出竞争性能,其中获得了所有最优值;并且(4)应该注意的是,ACO在求解给定的12个实例(即从“j15c5c1”到“j15c5d6”)时表现出比本公开算法更好的性能。然而,在求解其他24个实例时,所提出的LABC显示出比ACO更好的性能。平均而言,与PSO、AIS、ACO和B&B相比,该算法具有83%的最优值,显示出竞争性能。
(e.)十道较难问题的比较:10个更难的问题,有30个5个工件阶段的规模,是通过在Minitab软件中进行Mann-Whitney测试编码的生成的。适应度值(最大完工时间)的最小值、最大值、平均值和平均计算时间如表5所示。表中还列出了每个比较算法的平均计算时间。在表5中,第一列给出了基准问题;然后,用四列显示每个比较的算法,即最小完工时间、最大完工时间、平均完工时间和平均计算时间(时间单位:秒);下面三列列出了比较算法的最小完工时间的偏差值;最后三列给出了平均Makespan的偏差值。偏差值按公式(13)计算,将每个基准的最佳值收集在由三个比较算法获得的计算结果中。
从表5可以看出,(1)在解决十个较难的问题时,LABC在考虑最小、最大和平均适应值的情况下表现出最好的性能;(2)所有比较算法所消耗的计算时间也验证了LABC的效率;(3)所提出的算法获得了每个基准的所有最优值,并且这些值明显优于其他比较算法的值。例如,对于求解“j30c5e10”,LABC获得的最小适应值为580,而PSO收集的结果为594,对于AIS为604。
(f.)多目标问题的比较结果:为了使问题更接近于云系统中的现实,选择了两个实际不相关的机器HFS问题。比较的算法包括EDA、AIS和SFLA。表6和表7给出了处理时间,表8报告了比较结果。
从表8可以看出:(1)从每个实例的比较结果来看,所提出的算法表现出更好的性能;(2)平均而言,考虑到Makespan的平均值,我们提出的算法的计算结果与每个实例的最佳值相同,这表明了LABC的健壮性;(3)考虑到测试实例所消耗的计算时间,所提出的LABC算法也显示出更好的性能。图4.给出了问题2(f1=297,f2=191,f3=1628)的最佳解的甘特图。
表4 15个工作问题的比较结果
表5十个较难问题的比较结果
表6问题1处理时间表
表7问题2处理时间表
表8两个问题的比较结果
(g.)34个扩展问题的比较:为了进一步验证所提出的算法对于解决云系统中不同设备具有不同处理能力的HFS问题的有性能,扩展了选定的34个较难问题。给定工件i,在阶段j中,有k台机器在这阶段,传统问题中的处理时间为ptij。然后,按照以下步骤实现扩展机制。
步骤1:设w=1;
步骤2:在[0,ptij/2]的范围随机生成整数值r;
步骤3:如果ptij/2<1,则r=0;
步骤4.在[ptij-r,ptij+r]范围中随机生成处理时间p;
步骤5.对于任务i的处理阶段j,将p作为处理时间分配给机器w;
步骤6.设w=w+1,如果w<k,则返回步骤2,否则停止程序。
为了进一步测试解决无关机器HFS问题的性能,对PABC,DABC和HABC这三种有效的算法进行了详细的比较。三种比较算法的主要区别在于:(1)对于所采用的BEE过程,PABC和HABC使用了四种扰动方法,即一种交换、一种插入、两种插入和两种交换算子,而DABC采用了五种策略;(2)对于跟随蜂,DABC设计了一种结合基于插入的局部搜索和基于交换的局部搜索的组合局部搜索,而HABC和PABC分别使用EDA算法和锦标赛选择方法;(3)对于侦察蜂,PABC和DABC选择最佳解决方案并应用局部搜索算子来生成新的解决方案,而HABC选择随机解决方案。
实验参数设置为与文献中相同。LABC,PABC,HABC和DABC之间的计算比较结果报告在表9中,显示了34个无关HFS问题的最佳适合度的比较结果。表9包含14列,其中第一列显示了与源基准测试相同的实例名称;最佳值在第二列中;以下各列列出了四种比较算法(即LABC、PABC、HABC和DABC)的结果;接下来的四列列出了将四种算法与最佳适合值进行比较的偏差值;最后四列列出了解决每个比较算法消耗的每个实例的平均计算时间。
从表9可以看出,(1)在考虑到不同处理能力的情况下,所提出的LABC从给定的34个实例中获得33个最优值;(2)平均而言,LABC也显示出与其他高效算法相比具有竞争力的性能;(3)考虑到平均计算时间,LABC为每个实例消耗了大约26秒,这优于PABC和DABC;并且(4)从平均偏差值可以验证,平均而言,LABC与其他三种算法相比表现出更好的性能。
为了确定上表中观察到的差异是否确实存在显著不同,应用Friedman检验和Holm多重比较检验作为配对比较的后处理程序。图5给出了对十个较难的问题(即,“t30c5e1”到“t30c5e10”)应用HOLM多重比较测试后的配对比较结果,表9中列出的四种比较算法的偏差值作为比较测试的输入数据,即从这些偏差值中获得平均值。对于图5中给出的Holm多次比较,第一行是提出的算法,下面三行是其他比较算法。可以明显看出,LABC算法的直线与其他算法的直线没有重叠,而本公开算法的直线处于最左边的位置,这意味着本公开算法明显优于其他比较算法。
图6是解决“t30c5e9”的四种比较算法之间收敛能力的比较。可以得出以下结论:(1)提出的LABC算法可以收敛到一个较低的适应值。本公开考虑了三个目标的最小化,因此,较低的适应度水平意味着更好的解决方案:(2)LABC在大约50秒后收敛到一个最优值,这比DABC和HABC快,比PABC慢,但与PABC相比具有更好的探测能力;(3)值得注意的是,PABC算法在约40秒前收敛到一个较低的水平,而本公开算法在大约50秒后达到了一个较低的水平,这验证了LABC具有更好的探测能力;(4)综上所述,所提出的LABC算法在解决较大规模问题时具有较好的收敛能力。
表9 34个不相关任务调度问题的最佳适合度比较结果
对云系统中的两类柔性任务调度问题进行了测试和分析,分别建模为具有相同并行机的HFS和具有不相关机器的HFS。经过单目标和多目标的详细比较,与几种有效的算法相比,本公开混合算法具有较好的性能。主要原因是:(1)提出的8种设计良好的扰动结构增强了算法的开发能力;(2)改进的跟随蜂机制具有深度挖掘功能,可以进一步增强局部搜索能力;(3)自适应扰动结构平衡了开发和探索能力;(4)设计良好的侦察蜂算法可以提高算法的收敛能力。
实施例2
本公开提供一种云计算系统下多目标任务调度系统,包括:
调度优化模型构建模块,其用于以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;
调度优化方案求解模块,其用于采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;
调度模块,其用于利用得到的调度优化方案对云计算系统下的任务进行调度。
实施例3
本公开提供一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行一种云计算系统下多目标任务调度方法的步骤。
实施例4
本公开提供一种终端设备,包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行一种云计算系统下多目标任务调度方法的步骤。
以上仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
Claims (6)
1.一种云计算系统下多目标任务调度方法,其特征在于,包括:
以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;
所述混合车间调度模型的约束条件是:
限制每个操作的释放时间;
保证在任何设备中没有操作重叠,即后续操作必须等待前置操作的完成;
确保对于一个操作只能选择一个设备;
采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;
所述求解的具体过程包括:
采用初始化策略生成初始化种群;
在雇佣蜂阶段,对初始化种群中每个解生成相应的邻域解,评估新生成的邻域解并初始化自适应邻域结构;
在跟随蜂阶段,采用锦标赛选择方法选择当前较优解,对较优解生成相应的邻域解,评估该邻域解并更新自适应邻域结构,并对当前较优解执行深度开发;
在侦查蜂阶段,使用八种扰动结构生成八个邻域解,选择最优解并与跟随蜂阶段得到的邻域解进行比较,若最优解优于跟随蜂阶段得到的邻域解,则最优解取代后者;
在深度开发阶段,基于当前最优解进行深度开发过程,以最优解取代最差解,具体地,
生成一个随机数,将其与预设的系统参数进行比较,若随机数小于系统参数,则基于当前解执行深度开发过程;
利用自适应扰动结构中获胜的邻域结构生成系统参数的邻域解;
评估每个邻域解,并且若其适应值优于前一个邻域解,用所选择的扰动结构更新自适应扰动结构,以及用邻域解替换当前解;
所述扰动结构包括单交换结构、双交换结构、单点互换结构、单插入结构、双插入结构、头尾插入结构和单点插入结构;
利用得到的调度优化方案对云计算系统下的任务进行调度。
2.如权利要求1所述的一种云计算系统下多目标任务调度方法,其特征在于,
所述最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量的目标函数,分别为:
其中,cis是阶段i中任务s的完成时间、cmax是所有任务的最大完成时间、Wk是设备k的工作负载、Wmax是所有设备的最大工作负载、Tw是所有设备的总工作负载;m是设备数、n是作业数;
对三种目标函数进行加权得到加权目标函数:
F(c)=w1×F1(c)+w2×F2(c)+w3×F3(c)
w1+w2+w3=1,0≤w1,w2,w3≤1,
其中,w1,w2和w3表示权重系数。
3.一种云计算系统下多目标任务调度系统,其特征在于,包括:
调度优化模型构建模块,其用于以最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量为目标,将云计算系统下的任务调度构建为混合车间调度模型;
所述混合车间调度模型的约束条件是:
限制每个操作的释放时间;
保证在任何设备中没有操作重叠,即后续操作必须等待前置操作的完成;
确保对于一个操作只能选择一个设备;
调度优化方案求解模块,其用于采用嵌入扰动结构的混合离散人工蜂群算法对混合车间调度模型进行求解,得到调度优化方案;
所述求解的具体过程包括:
采用初始化策略生成初始化种群;
在雇佣蜂阶段,对初始化种群中每个解生成相应的邻域解,评估新生成的邻域解并初始化自适应邻域结构;
在跟随蜂阶段,采用锦标赛选择方法选择当前较优解,对较优解生成相应的邻域解,评估该邻域解并更新自适应邻域结构,并对当前较优解执行深度开发;
在侦查蜂阶段,使用八种扰动结构生成八个邻域解,选择最优解并与跟随蜂阶段得到的邻域解进行比较,若最优解优于跟随蜂阶段得到的邻域解,则最优解取代后者;
在深度开发阶段,基于当前最优解进行深度开发过程,以最优解取代最差解,具体地,
生成一个随机数,将其与预设的系统参数进行比较,若随机数小于系统参数,则基于当前解执行深度开发过程;
利用自适应扰动结构中获胜的邻域结构生成系统参数的邻域解;
评估每个邻域解,并且若其适应值优于前一个邻域解,用所选择的扰动结构更新自适应扰动结构,以及用邻域解替换当前解;
所述扰动结构包括单交换结构、双交换结构、单点互换结构、单插入结构、双插入结构、头尾插入结构和单点插入结构;
调度模块,其用于利用得到的调度优化方案对云计算系统下的任务进行调度。
4.如权利要求3所述的一种云计算系统下多目标任务调度系统,其特征在于,包括:
所述最小化最大完工时间、最小化最大设备工作量和最小化所有设备的总工作量的目标函数,分别为:
其中,cis是阶段i中任务s的完成时间、cmax是所有任务的最大完成时间、Wk是设备k的工作负载、Wmax是所有设备的最大工作负载、Tw是所有设备的总工作负载;m是设备数、n是作业数;
对三种目标函数进行加权得到加权目标函数:
F(c)=w1×F1(c)+w2×F2(c)+w3×F3(c)
w1+w2+w3=1,0≤w1,w2,w3≤1,
其中,w1,w2和w3表示权重系数。
5.一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行如权利要求1-2任一项所述方法的步骤。
6.一种终端设备,包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行如权利要求1-2任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911252905.7A CN110969362B (zh) | 2019-12-09 | 2019-12-09 | 一种云计算系统下多目标任务调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911252905.7A CN110969362B (zh) | 2019-12-09 | 2019-12-09 | 一种云计算系统下多目标任务调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110969362A CN110969362A (zh) | 2020-04-07 |
CN110969362B true CN110969362B (zh) | 2023-09-22 |
Family
ID=70033547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911252905.7A Active CN110969362B (zh) | 2019-12-09 | 2019-12-09 | 一种云计算系统下多目标任务调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110969362B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112348314A (zh) * | 2020-10-12 | 2021-02-09 | 山东师范大学 | 一种带起重机的分布式柔性车间调度方法及系统 |
CN113064392B (zh) * | 2021-03-22 | 2023-09-08 | 聊城大学 | 基于矩阵车间agv调度的离散型优化方法 |
CN113313283B (zh) * | 2021-04-14 | 2022-08-19 | 兰州理工大学 | 一种基于知识驱动方法的分布式装配阻塞流水车间集成调度方法 |
CN113554392B (zh) * | 2021-07-27 | 2022-11-04 | 同济大学 | 考虑节能与准时的物料超市循环供应调度方法 |
CN113869615B (zh) * | 2021-12-03 | 2022-03-11 | 中国人民解放军空军预警学院 | 一种基于目标态势感知的干扰资源调度优化方法及装置 |
CN115496054B (zh) * | 2022-11-15 | 2023-02-21 | 树优(宁波)科技有限公司 | 多学科设计优化方法、系统、电子设备及存储介质 |
CN117455222B (zh) * | 2023-12-26 | 2024-03-05 | 聊城大学 | 基于分布式异构流水车间组调度问题的求解方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015075616A1 (en) * | 2013-11-22 | 2015-05-28 | Abb Research Ltd. | Method and system for minimum cost flow based optimal scheduling and production planning |
CN105550825A (zh) * | 2016-01-15 | 2016-05-04 | 中南民族大学 | 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155399B2 (en) * | 2001-04-03 | 2006-12-26 | Witness Systems, Inc. | System and method for complex schedule generation |
US9344573B2 (en) * | 2014-03-14 | 2016-05-17 | Twilio, Inc. | System and method for a work distribution service |
-
2019
- 2019-12-09 CN CN201911252905.7A patent/CN110969362B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015075616A1 (en) * | 2013-11-22 | 2015-05-28 | Abb Research Ltd. | Method and system for minimum cost flow based optimal scheduling and production planning |
CN105550825A (zh) * | 2016-01-15 | 2016-05-04 | 中南民族大学 | 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法 |
Non-Patent Citations (5)
Title |
---|
基于Nelder-mead单纯形法的改进人工蜂群算法研究;苏宏升等;《计算机工程与应用》;20150717(第24期);第51-53页 * |
基于改进分布估计算法的带并行机模糊混合Flow Shop调度;耿佳灿等;《华东理工大学学报(自然科学版)》;20150430(第02期);全文 * |
求解柔性作业车间调度问题的多策略融合Pareto人工蜂群算法;赵博选等;《系统工程理论与实践》;20190525(第05期);第1227-1231、1234页 * |
离散NSGA-Ⅱ求解带有限缓冲区的多目标批量流水线调度问题;韩玉艳等;《聊城大学学报(自然科学版)》;20180325(第01期);全文 * |
赵博选等.求解柔性作业车间调度问题的多策略融合Pareto人工蜂群算法.《系统工程理论与实践》.2019,(第05期), * |
Also Published As
Publication number | Publication date |
---|---|
CN110969362A (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110969362B (zh) | 一种云计算系统下多目标任务调度方法及系统 | |
Huang et al. | An effective ant colony optimization algorithm for multi-objective job-shop scheduling with equal-size lot-splitting | |
Pan et al. | Effective metaheuristics for scheduling a hybrid flowshop with sequence-dependent setup times | |
CN110632907B (zh) | 一种分布式装配式置换流水车间调度优化方法及系统 | |
Sivasankaran et al. | Literature review of assembly line balancing problems | |
Ewees et al. | Enhanced salp swarm algorithm based on firefly algorithm for unrelated parallel machine scheduling with setup times | |
Şahman | A discrete spotted hyena optimizer for solving distributed job shop scheduling problems | |
CN113792924A (zh) | 一种基于Deep Q-network深度强化学习的单件作业车间调度方法 | |
CN112685138B (zh) | 云环境下基于多种群混合智能优化的多工作流调度方法 | |
Pooranian et al. | Hybrid metaheuristic algorithm for job scheduling on computational grids | |
Zuo et al. | A robust scheduling method based on a multi-objective immune algorithm | |
Sadasivam | An efficient approach to task scheduling in computational grids | |
CN103677960A (zh) | 一种能耗约束的虚拟机博弈重放置方法 | |
CN111353646A (zh) | 带切换时间的炼钢柔性调度优化方法、系统、介质及设备 | |
Zhou et al. | Multi-mechanism-based modified bi-objective Harris Hawks optimization for sustainable robotic disassembly line balancing problems | |
Yang et al. | A fully hybrid algorithm for deadline constrained workflow scheduling in clouds | |
Rajakumar et al. | Workflow balancing in parallel machines through genetic algorithm | |
CN106610641A (zh) | 针对动态作业车间调度问题的基于局部搜索遗传编程算法 | |
Han et al. | Hybrid flow shop scheduling with finite buffers | |
CN112148446A (zh) | 一种用于多技能资源受限项目调度的进化策略算法 | |
Sharma et al. | Desert sparrow optimisation algorithm for permutation flowshop scheduling problems | |
CN110716522A (zh) | 基于任意时间a*启发式搜索的制造企业车间调度优化方法 | |
CN110928253A (zh) | 自动制造系统的动态加权启发式调度方法 | |
Zhang | Improved NSGA-II based process dynamic multi-objective algorithm | |
CN110852500B (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 |