论文部分内容阅读
云计算是一种利用互联网和中央远程服务器为用户提供动态可扩展服务的模型,只需较少的底层软硬件管理与云服务供应商和终端用户的简单交互,便可快速地实现对共享资源池中计算资源(CPU、存储设备、应用程序和网络等)的配置和释放。用户可以在任意位置任意终端实时便捷地动态获取云计算服务,而无需了解内部云存储和虚拟化等关键技术的细节。云服务提供商在给用户提供海量虚拟资源时,最关键的问题即是如何经济高效的进行资源调度,如何以最小的代价(执行时间、预算、传输代价、资源利用率等)完成工作流的执行。在传统的云工作流调度算法中,往往针对时间或成本某单一指标去优化,而根据云环境中计算资源“按需付费”的特点,这种单目标优化的云工作流调度算法并不能满足日益增长且多元化的用户需求,用户通常更倾向于花费最少的代价去获得最好的服务,这就要求采用基于多目标的云工作流调度策略,在提高服务质量的同时,最大化地压缩运行成本。为了实现云环境中科学工作流调度的执行时间和多种执行代价的同步优化,针对IaaS环境下的多目标工作流调度问题,本文提出了一种基于代理模型和自适应局部搜索的多目标优化云工作流调度算法(Surrogate-assisted Adaptive Local Search Multi-objective Optimization,简称 S-ALSMO)。具体工作如下:(1)基于进化多目标的云工作流调度算法的实现与性能分析。为了实现云环境中对科学工作流调度的完成时间、执行代价与传输代价等多目标的同时优化,本文对云工作流调度问题的过程与特点进行了分析,设计了基于实数的任务与虚拟机编号、虚拟机类型的编码解码机制,定义了不同调度模型所对应的适应度函数,分别以最大完成时间和执行代价,最大完成时间和数据传输代价为调度目标,构建了两种新的云工作流调度模型,实现了进化算法MOEA/D和NSGA-II在模型上的求解,并且通过引入多种交叉算子与变异算子来实现种群多样性,探究不同遗传算子组合对优化性能的影响,并以4种类型、3种规模的12个现实科学工作流作为测试数据,完成了多组对比实验与算法性能分析。(2)提出了基于RBF代理模型和自适应局部搜索的云工作流调度算法S-ALSMO,并将其用于求解基于任务最大完成时间、数据传输代价等不同服务组合优化的云工作流调度问题。在求解高维决策变量的昂贵多目标优化问题时,针对MOEA/D算法无法得到分布性均匀解的缺陷,本文在MOEA/D算法求解思路基础上引入了 RBF代理模型,通过建立真实复杂目标函数的近似模型来预测未知解,从而获得分布更为均匀的解,并且能够大大降低目标函数评估成本,提升MOEA/D算法的优化效率;此外,本文在代理模型辅助的进化算法中又引入了自适应局部搜索策略,从而能够在获得均匀分布解的同时加快算法的收敛速度,更高效地促使Pareto最优解集趋于平稳。(3)通过在仿真平台workflowsim上,对4种现实科学工作流(CyberShake、Epigenomics、Inspiral和Montage)进行仿真实验,完成了本文提出的S-ALSMO算法与传统MOEA/D算法以及NSGA-II算法的性能比较。实验结果表明,本文基于RBF代理模型和自适应局部搜索的S-ALSMO算法,在数据传输代价和任务执行时间的组合优化与任务执行代价和任务执行时间的组合优化中,均能达到更快的收敛速度,获得分布更均匀的Pareto解集,在降低任务执行时间与执行代价等综合性能上均有较大提升,能从各方面更好地满足用户需求。