基于萤火虫和蝙蝠算法的云计算作业调度混合框架
摘要
如今,云计算是一个新兴领域,需要更多的算法和技术来支持云计算的各种过程。本文研究了云计算平台中的作业调度过程,该过程需要一种良好的算法来调度来自云计算环境中不同用户的作业请求。由于请求可能来自任何平台,当多个用户需要特定作业时,调度就变得必不可少。
在本研究中,我们旨在为云计算环境中的作业调度开发一种混合算法。相应地,将采用多准则对分布在不同服务器上的各种作业进行调度。然后,基于混合优化算法来完成作业调度。此外,还将考虑具有不同约束的作业,并利用CloudSim工具模拟云计算环境。
关键词 :云计算;萤火虫算法;蝙蝠算法;作业调度;FF‐BAT算法。
1 引言
计算正在转变为一种由服务构成的模式,这些服务被商品化,并以类似于水、电、气和电话等传统公用事业的方式进行交付。在这种模式下,用户根据自身需求访问服务,而无需关心服务的托管位置或交付方式。多种计算范式承诺实现这一效用计算愿景,包括集群计算、网格计算以及最近兴起的云计算(布亚等人,2009 年)。云计算是一种新兴信息技术,它改变了IT架构解决方案的提出方式,其发展方向围绕虚拟化主题:数据存储、本地网络(基础设施)和软件的虚拟化(利维特,2009年;温哈特等人,2009年)。与专用基础设施相比,云计算提供了完全的可扩展性、可靠性、高性能以及相对低成本的可行解。这些服务通过互联网提供的应用程序以及数据中心内的系统硬件来实现。该技术能够按需访问广泛的资源集合。对于预算紧张且在压力下寻求提供更优服务的IT部门而言,这种技术极具吸引力。当此云以按使用付费的方式向普通用户提供时,称为公有云。当客户开发自己的应用程序并运行内部私有基础设施时,称为私有云。公有云与私有云的集成与整合被称为混合云。
云计算是基于互联网的计算机技术的进步与应用。云是对互联网的一种隐喻,代表了其背后隐藏的复杂基础设施概念。云计算是一种模式,能够实现无处不在、便捷的按需网络访问,面向可配置计算资源的公共池,这些资源可以快速配置和释放,仅需最少的管理工作或服务提供商交互。云计算包含三种模式:软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS)(Tayal, 2011)。
近年来,针对云计算中的作业调度问题的研究活动较少。任务是一项(顺序性)活动,利用一组输入生成一组输出。在云计算中,每个用户的應用将在虚拟操作系统上运行,云系统将分布式资源分配给这些虚拟操作系统。每个应用完全独立且自我管理,彼此之间没有任何关联,例如,某些应用需要更多的CPU时间计算复杂任务,而其他一些任务可能需要更多内存来存储数据等。在每个服务单元执行的项目中都会消耗资源。为了衡量应用程序的直接成本,必须测量每次资源使用的成本(如CPU成本、内存成本、I/O成本等)。当每个单独资源成本的直接数据被测量后,便可进行更准确的成本和利润分析。
许多云应用需要工作流处理,其中任务根据其控制或数据依赖性进行处理。由于工作流调度是一个著名的NP完全问题(余和布亚,2008),已有许多启发式和元启发式方法被提出用于网格等分布式系统(刘,2009)。对于云计算这样的效用服务,定价取决于所提供服务质量(QoS)的水平。通常,服务提供商对更高的QoS收取更高的价格。因此,用户可能并不总是需要比实际所需更早地完成工作流。相反,他们希望使用价格更低、QoS较低但足以满足其需求的服务(李等,2009)。许多软计算方法被用于调度,例如基于模糊规则的分类器,称为简约分类器(pClass)(普拉塔玛等,2015a,2016e)、基于元认知的支架式分类器,即递归分类器(rClass)(普拉塔玛等,2015b,2016c)、进化模糊分类器(普拉塔玛等,2016a)、进化型2型递归模糊神经网络(普拉塔玛等,2016b)、模糊逻辑系统(卢霍弗和普拉塔玛,2015;普拉塔玛等,2016d)、模糊神经网络(卢霍弗等,2015;文卡特桑等,2016;普拉塔玛等,2014)。因此,已有多个项目开发了少量具备调度算法的云工作流管理系统。然而,在这些现有的云工作流管理系统中,基于用户QoS要求(如截止时间和预算)的工作流调度却很少受到关注(张军等,2011;柯等,2010)。
本文提出了一种用于云计算中作业调度的混合算法。在云计算中,存在分布在不同位置的大量资源,每个资源将执行一个或多个作业。用户给出的查询会包含更多作业,相应输出将在其查询中的作业执行后提供给用户。每位用户的查询中的作业由调度器进行调度,以便在云计算环境中执行。为了有效地调度这些作业,需要一种高效的算法。本文提出了一种混合萤火虫‐BAT(FF‐BAT)算法来实现云计算中的作业调度。首先,利用用户给出的查询生成针对资源的初始解,以供所提出的混合算法处理。然后将这些初始解分别作为输入传入萤火虫算法(FA),在经过FA处理后得到若干最优解,并将其作为输入继续用于蝙蝠算法的处理。经过蝙蝠算法处理后得到的最优解即为本方法所调度的作业。随后执行已调度作业,并将所需输出结果提供给用户。本工作的主要贡献如下:
- 提出了一种新型混合FFBAT算法,用于设计云中的作业调度过程。此处,我们构建了多目标适应度函数以实现调度过程。
- 萤火虫和蝙蝠优化算法被混合并用于寻找最优解,从而增强了蝙蝠算法和萤火虫算法在单独使用过程中存在的某些困难。
- 应最小化总执行时间。应能抵御各种类型的攻击。
本文组织如下:第二节展示了相关工作的一些综述,第三节解释了云计算中的作业调度,第四节阐述了所提出的技术,第五节展示了获得的结果;第六节总结了我们的技术。
2 相关工作:简要回顾
文献提出了多种用于云计算环境中的作业调度技术。本文回顾了一些与作业调度相关的工作。(Tayal, 2011)提出了一种基于模糊遗传算法优化的优化算法,该算法通过评估作业队列中整个任务组来做出调度决策。在其算法中,系统模型描述了与处理器相关的信息,包括插槽信息、数据复制信息和处理器的工作负载信息。任务模型包含了将在队列中处理的作业和请求信息。预测执行时间模型是后续调度优化的基础。利用任务模型、系统模型、预测执行时间模型以及目标函数作为输入,对参数进行模糊化处理,并生成最优调度。
Chen 等人 (2011) 提出了一种作业参数和容量函数的转换方法,将离线可变成容量问题转化为恒定容量问题。他们研究了在线调度在欠载系统和过载系统中的竞争比。对于欠载系统,他们证明最早截止时间优先 (EDF) 调度算法的竞争比为 1;对于过载系统,在个体可接受性条件下提出了一种具有渐近最优竞争比的在线调度算法 V‐Dover。他们还指出,如果放宽可接受性条件,则不存在具有正竞争比的在线算法。仿真评估表明,所提出的 V‐Dover 算法在所有情况下均优于已知的最佳算法。
Armstrong 等人 (2010) 开发了一种用于分布式计算云的虚拟机资源管理器(云调度器)。云调度器根据用户的作业提交来启动和管理用户定制的虚拟机。他们描述了云调度器的设计动机,并展示了其在科学和商业云环境中的应用结果。
Maguluri 等人 (2012) 研究了云计算集群中负载均衡与调度的随机模型。其主要贡献之一是提出了基于帧的非抢占式虚拟机配置策略。通过选择足够长的帧持续时间,这些策略可以接近吞吐量最优,而广泛使用的最佳适配策略被证明不是吞吐量最优的。仿真结果表明,帧持续时间不仅在吞吐量方面表现良好,而且似乎也能提供良好的延迟性能。他们通过仿真研究了这些替代算法的延迟性能。
Bitam (2012) 提出了一种蜂群优化算法,称为蜜蜂生命周期算法 (BLA),该算法被应用于在云数据中心中高效地调度计算任务到处理资源上。这被认为是一个NP完全问题,其目标是以最优的方式将工作负载分配到处理资源上,以减少作业的总执行时间,并进而提高整个云计算服务的有效性。BLA 的灵感来源于自然界中蜜蜂的生命活动,主要体现在其最重要的两种行为:繁殖和寻找食物源。为了评估其有效性和性能,进行了一系列实验测试。与该领域中传统的遗传算法 (GA) 进行比较后,结果表明,BLA 在执行时间(makespan)方面优于 GA,且复杂度最低。
孙等人 (2011) 针对 IaaS 公有云提出了一种服务模型,并基于排队论优化了该服务模型的队列长度和调度服务器配置。他们构建了一种基于需求向量的调度模型,通过需求与可用资源元数据的匹配来筛选可用主机。该调度模型结合虚拟机迁移技术,实现资源重新分配,以保障整个平台的可用率。该算法在 IaaS 公有云计算平台上验证了可行性。
拉赫曼等人 (2013) 提出了一种基于动态关键路径的自适应工作流调度算法,用于网格环境。该算法通过在每一步计算工作流任务图中的关键路径,动态地确定工作流任务到网格资源的有效映射。他们通过仿真将所提出方法的性能与现有方法在不同类型和规模的工作流下进行了比较。结果表明,基于启发式方法的调度技术能够适应资源的动态变化特性,并避免在动态变化的网格环境中出现性能下降。
沃内克和高 (2011) 讨论了在云中实现高效并行数据处理的机遇与挑战,并介绍了他们的研究项目Nephele。Nephele是首个明确利用当今IaaS云所提供的动态资源分配功能的数据处理框架,该功能应用于任务调度和执行两个方面。处理作业中的特定任务可以分配给不同类型的虚拟机,这些虚拟机在作业执行期间自动实例化和终止。基于此框架,他们在IaaS云系统上对受MapReduce启发的处理任务进行了扩展评估,并将结果与流行的数据处理框架Hadoop进行了比较。
阿卜杜拉和奥斯曼 (2013) 尝试利用可分负载理论 (DLT) 设计有效的策略,以最小化在云计算环境中调度作业的总体处理时间。他们在分析中考虑了同构处理器,并推导出分配给每个处理器的负载分配比例的闭式解。他们的分析还试图以一种使云服务提供商能够从其服务中获得最大收益且满足用户作业服务质量要求 (QoS requirement) 的方式来调度作业。最后,他们通过严格的仿真研究量化了这些策略的性能。
3 云计算中的作业调度
在云计算中,用户可以从不同位置访问资源。这些资源不会位于同一地点,而是分布在不同的位置,用户可以从任何位置访问它们。用户提交的查询可能包含不同的作业,每个作业可能需要使用不同的资源来执行。资源的分配相应作业到相应资源取决于调度器。图1显示了云环境中作业调度的示例架构。
在图1中,{U1, U2,… UN}表示用户;{W1, W2,… WN}表示用户给出的相应任务或查询;{J1, J2,… JM}表示为执行每个任务或查询而需执行的作业;{R1, R2,… RP}表示位于云的不同位置的资源。假设一个用户提交一个查询以执行一项任务,该查询可能包含多个作业。任务或查询中的每个作业将使用不同的资源来执行,这些资源可能位于云中的任意位置。调度器会将相应的作业调度到相应的资源上。因此,在云计算环境中需要一种高效算法来有效调度作业。本文提出了一种混合FF‐BAT算法用于在云中调度作业。图2展示了所提出技术的过程。首先,利用用户给出的查询生成初始解,以供混合FF‐BAT算法处理。每个解随后通过萤火虫算法进行处理,萤火虫算法得到的最优解被输入蝙蝠算法。经过蝙蝠算法处理后获得的最终最优解用于调度作业。
图2解释如下:最初,利用用户给出的查询生成初始解以处理混合FF‐BAT算法。每个解随后基于萤火虫算法进行处理,并将萤火虫算法得到的最优解传递给蝙蝠算法。经过蝙蝠算法处理后获得的最终最优解用于调度作业。
4 云计算环境中的作业调度混合算法
本节介绍了我们所提出的混合算法,以在云计算环境中有效地调度作业。图2展示了所提出的技术的过程。
4.1 初始解
用于处理混合FF‐BAT算法的初始解由用户提供的查询生成。为了执行任务,用户将提交查询,并根据该查询执行相应任务。查询包含多个作业,每个作业将使用不同的资源来完成。并非所有资源都能执行全部作业。多个资源可以执行同一作业,但执行时间和资源质量会有所不同。表1显示了执行作业的示例时间和资源质量。
| R1 | R2 | R3 | … | RP | |
|---|---|---|---|---|---|
| J1 | (10, 5) | -(6, 3) | … | - | |
| J2 | - | (8, 4) | - | … | - |
| J3 | - | - | (4, 2) | … | (6, 3) |
| J4 | (5, 3) | (9, 5) | - | … | - |
| … | … | … | … | … | … |
| JM | (3, 2) | - | - | … | - |
表1解释如下:作业J1 可以使用资源R1 和R3 执行,但资源R1 执行该作业需要十秒,质量为五,而资源R3 执行该作业需要六秒,其质量为三。作业J2 可以使用资源R2 执行,执行所需时间为八秒,质量为三。类似地,所有其他作业将使用相应资源执行。利用表1,根据用户查询提供的作业执行可能性生成初始解。例如,考虑三个用户U1、U2 和UN 给出的任务或查询如下:
$$ { W_1 } = { J_1, J_2, J_4 } $$
$$ { W_2 } = { J_1, J_2, J_3 } $$
$$ { W_N } = { J_1, J_3, J_4, J_M } $$
在上述方程中,要执行第一个用户的查询,必须执行作业{J1, J2和J4};要执行第二个用户的查询,必须执行作业{J1, J2和J3};要执行Nth 个用户的查询,必须执行作业{J1, J3, J4和JM}。使用这些用户给定的查询生成的一个解如表2所示。
4.2 适应度评估
对每个生成的解决方案进行适应度评估。适应度计算与以下参数相关:待执行的作业数量、资源执行作业所花费的时间以及资源执行作业的质量。适应度通过下面给出的方程进行评估:
$$
\text{fit}(S_i) = \alpha \left( \frac{T_{\text{max}}}{T_{\text{total}}} \right) + (1 - \alpha) \left( \frac{\sum Q}{M \times Q_{\text{max}}} \right)
$$
在上述方程中,$\text{fit}(S_i)$ 表示第$i$个解决方案的适应度;$T_{\text{max}}$ 是资源执行作业所花费的最大时间,$T_{\text{total}}$ 表示资源执行所有作业所花费的总时间,$Q$表示资源质量,$M$表示作业总数。表3显示了基于第一个解决方案S1完成整个过程所需的总时间。这里的限制条件是:一个资源不能同时执行两个不同用户的作业,且在一个时间间隔内单个用户的两个不同作业不能同时执行。
4.3 FF-BAT算法
本节介绍我们技术中FF‐BAT算法的过程。在多个研究领域中,萤火虫(Yang和 He,2013)和蝙蝠(Yang,2010)作为群体智能中的两种主要算法,已被有效用于优化问题。然而,萤火虫算法存在一些局限性,例如容易陷入多个局部最优。它虽然执行局部搜索,但有时无法完全摆脱这些局部最优。萤火虫算法参数是固定的,不会随时间变化。此外,萤火虫算法不会记忆每个萤火虫更优状态的历史信息,导致它们移动时忽略先前的更优状态,可能最终错失这些状态。另一方面,蝙蝠算法的实现比许多元启发式算法更复杂,因为每个代理(蝙蝠)都被分配了一组相互关联的参数,如位置、速度、脉冲率、响度和频率。通过将这两种优化算法混合,我们假设最优调度性能将得到提升,同时有助于提高安全性。基于上述考虑,本文结合并使用这两种算法生成最优解,以帮助改善调度性能。因此,我们采用FFBAT算法来选择最优解。FFBAT的更新步骤如下所述。
在评估每个生成的解决方案的适应度后,选择适应度最佳的解作为更亮的萤火虫,其余所有解将向该更亮的萤火虫移动。因此,解将根据更亮的萤火虫进行更新。更新将通过以下方程完成:
$$
S_i^{c+1} = S_i^c + \beta_0 e^{-\gamma r_{ij}^2} (S_j^c - S_i^c) + \alpha_c \varepsilon_i
$$
在上述方程中,$S_i^{c+1}$ 表示更新后的第 $i$ 个解;$S_i^c$ 表示当前第 $i$ 个解;$S_j^c$ 表示第 $j$ 个解,即更亮的萤火虫; $\alpha_c$ 是随机化参数; $\varepsilon_i$ 向量;$\beta_0$ 和 $\gamma$ 是与萤火虫吸引力相关的常数。每次更新解后重新评估适应度,并重复该过程直至达到设定的迭代次数。最终迭代中的最优的五个解将被输入蝙蝠算法,以获得最终最优解,从而提升性能。每个解的频率通过以下方程进行更新:
$$
f_i = f_{\text{min}} + \beta (f_{\text{max}} - f_{\text{min}})
$$
第$i$个解的更新频率用于更新第$i$个解的速度。第$i$个解的速度使用以下方程进行更新:
$$
V_i^{c+1} = V_i^c + (S_j^c - S_i^c) f_i
$$
在上述方程中, $V_i^{c+1}$ 表示第 $i$ 个解的更新后速度; $V_i^c$ 表示第 $i$ 个解的当前速度,$S_j^c$ 表示当前最优解, $S_i^c$ 表示当前第 $i$ 个解。更新后的速度用于更新解。更新第 $i$ 个解的方程如下:
$$
S_i^{c+1} = S_i^c + V_i^{c+1}
$$
所提出的技术的算法:
输入来自不同用户的查询
输出 已调度作业
1 开始
2 获取包含来自不同用户的各个作业的查询
3 根据资源生成与查询相关的初始解
4 设置萤火虫算法的迭代次数以进行处理
5 For 每次迭代
6 对于 每个解
7 应用萤火虫算法
8 计算适应度
9 结束 for循环
10 选择最优解
11 For 每个解
12 根据最优解更新解
13 结束 for
14 结束 for
15 选择最优的五个解作为蝙蝠算法的输入
16 For 每个解
17 生成初始频率和初始速度
18 结束 for
19 设置迭代次数以执行蝙蝠算法
20 对于 每次迭代
21 对于 每个解
22 应用蝙蝠算法
23 计算适应度
24 结束 for
25 选择最佳的一个
26 对于每个解
27 根据最优解更新频率、速度和解
28 结束循环
29 结束循环
30 选择最佳的作业执行顺序
31 Stop
5 结果与讨论
本节展示了所提出方法论的实际意义。在此,我们分别对所提出的萤火虫和蝙蝠算法进行比较。我们使用Java (jdk 1.6) 和cloudSim 3.0.3模拟器实现了所提出的任务调度研究。cloudsim是由澳大利亚墨尔本大学Gridbus项目团队和网格实验室开发的云计算模拟软件。cloudsim可在Linux和Windows系统上运行。一系列实验在一台配备2 GHz双核计算机、4 GB内存并运行64位Windows 2007版本的Windows 7操作系统PC上进行。
5.1 实验设置
所提出的技术通过三种不同的输入数据进行实验。这三种不同的输入数据由我们生成,基于不同的查询序列,并通过改变处理时间和资源质量来生成,因为适应度是根据资源的处理时间和资源质量计算的。作业调度是基于适应度计算进行的。因此,通过改变每个用户的作业序列以及每个资源的处理时间和质量来生成三种输入数据,以实验所提出的技术。实验从适应度值和执行已调度作业的总时间两个方面进行。这些数值是在FF‐BAT算法过程中通过改变迭代次数以及改变生成的初始解获得的。适应度越低、时间越短,系统性能越好。
5.2 性能比较
所提出的技术的性能与使用FA的作业调度以及使用蝙蝠算法的作业调度进行了比较,比较指标包括获得的适应度和执行已调度作业所需的时间,比较时通过改变迭代次数以及使用三种不同输入生成的初始解来进行。
5.2.1 通过改变迭代次数进行比较
本节通过改变用于处理FF‐BAT算法的迭代次数,展示了使用三组不同输入在适应度和执行已调度作业所需时间方面的比较。图4显示了使用第一组输入数据获得的适应度比较结果。
在图4中,将所提出的技术与使用FA、蝙蝠算法和混合BATFF的作业调度在不同迭代次数下获得的适应度进行了比较。当迭代次数设为十时,使用所提出的技术获得的适应度为0.65,而使用FA为0.7676,使用蝙蝠算法为0.694925373,使用BATFF算法为0.6783。当迭代次数设为20时,使用所提出的技术获得的适应度为0.6437,而使用FA为0.7387,使用蝙蝠算法为0.682307692,使用BATFF算法为0.66472。当迭代次数设为30时,使用所提出的技术获得的适应度为0.6365,而使用FA为0.7196,使用蝙蝠算法为0.6617,使用BATFF算法为0.65384。总体而言,我们的技术相比其他对比技术表现更优。图5显示了使用第一组输入数据执行已调度作业所需时间的比较结果。在图5中,将所提出的技术与使用FA、蝙蝠算法和BATFF算法的作业调度在不同迭代次数下执行已调度作业所需时间进行了比较。当迭代次数设为十时,使用所提出的技术执行已调度作业所需时间为3,864秒,使用BATFF算法为6,317秒,使用蝙蝠算法为4,054秒。当迭代次数设为二十时,使用相应技术执行已调度作业所需的时间与之前设定的迭代次数相同。总体而言,我们的技术相比其他对比技术表现更优。
图6显示了使用第二组输入数据获得的适应度比较结果。在图6中,通过改变迭代次数,比较了所提出的技术与使用萤火虫算法、蝙蝠算法和BATFF算法进行作业调度之间的适应度。当迭代次数为10时,使用所提出技术获得的适应度为0.6560,使用蝙蝠算法为0.7299,使用FA为0.6892,使用BATFF算法为0.66346。当迭代次数为20时,使用所提出技术获得的适应度为0.6550,使用蝙蝠算法为0.7399,使用FA为0.6660,使用BATFF算法为0.6753。当迭代次数为30时,使用所提出技术获得的适应度为0.6492,使用蝙蝠算法为0.7499,使用FA为0.6860,使用BATFF算法为0.65436。图7显示了使用第二组输入数据执行已调度作业所需时间的比较结果。分析图7可知,我们所提出的方法在调度任务时达到了最短时间。在图8中,对于所有不同迭代次数的情况,所提出技术获得的适应度略低于蝙蝠算法,且低于FA。这表明所提出的技术相比其他用于比较的算法具有更好的优化效果,因此性能优于其他对比算法。图9显示了使用第三组输入数据执行已调度作业所需时间的比较结果。在图9中,对于所有不同迭代次数的情况,使用所提出技术执行已调度作业的总时间优于使用BATFF算法的结果。单独的算法相比所提出方法耗时最少。
5.2.2 通过改变初始解数量进行比较
本节展示了通过改变生成的初始解数量来处理FF‐BAT算法时,使用三种不同输入在适应度和执行已调度作业所需时间方面的比较。在此,我们将所提出的工作与萤火虫、蝙蝠和BATFF算法进行了比较。
图10展示了使用第一组输入数据获得的适应度比较结果。在图10中,适应度是通过改变生成的初始解数量以处理所提出的技术来计算的。在此,对于所有不同数量的初始解,所提出的技术均优于萤火虫算法;当初始解数量为六、八和十时,其性能略优于蝙蝠算法,并且也优于BATFF算法。总体而言,所提出的技术相比用于比较的其他算法表现更优。图11展示了使用第一组输入数据执行已调度作业所需时间的比较。图12展示了使用第二组输入数据获得的适应度比较结果。在图12中,比较结果显示,对于所有不同数量的初始解,所提出的技术均优于萤火虫算法;当初始解数量为八、十和12时,其性能优于蝙蝠算法。总体而言,所提出的技术相比其他用于比较的算法性能更优。图13展示了使用第二组输入数据执行已调度作业所需时间的比较。在此情况下,我们所提出的混合方法相比BATFF算法也获得了更好的结果。图14展示了使用第三组输入数据获得的适应度比较结果,图15展示了使用第三组输入数据执行已调度作业所需时间的比较结果。在图14和图15中,对于所有不同数量的初始解,所提出的技术相比其他用于比较的算法均表现出更优的性能。从结果可以看出,我们所提出的方法相比其他方法取得了更好的效果。
6 结论
本文中,我们开发了一种用于作业调度的混合FF‐BAT算法。FF‐BAT算法是一种萤火虫与蝙蝠算法的混合算法。首先,根据用户给出的查询及其在云计算中执行所需的资源生成一组初始解。所生成的初始解被输入到FF‐BAT算法中进行处理。FF‐BAT算法根据资源执行所需时间以及资源质量等约束条件,得出最优调度作业。随后,已调度作业被执行,并将对应用户查询的结果输出给用户。所提出的技术分别与萤火虫算法(FA)和蝙蝠算法(BAT)在适应度值和执行已调度作业的总时间方面进行了比较,比较时通过改变迭代次数和生成的初始解来运行各算法。性能比较结果表明,在适应度和执行已调度作业所需时间方面,所提出的技术整体优于用于对比的其他算法。
基于FF-BAT的云作业调度优化
1864

被折叠的 条评论
为什么被折叠?



