论文部分内容阅读
云计算是一种商业计算模型,它将计算任务分布在大量计算机构成的资源池上,使用户能够按需获取IT服务。而构成资源池的计算机在计算、存储、宽带性能等方面都可能存在限制与不同,在满足用户多样化、弹性的需求时,往往需要进行复杂的任务调度,但仍难以满足用户的服务质量(QoS)需求。云计算任务调度的研究就是为了解决此问题。云计算任务调度问题是一种组合优化类的NP难问题,现有云计算平台的任务调度算法如FIFO、公平调度、容量调度等都存在不足之处,难以很好地满足实际应用的需求。因此,人们提出了一些新的算法,这些算法中除了改进一些经典调度算法外,智能优化算法也逐渐被引入,如遗传算法、粒子群算法、蚁群算法、模拟退火算法等,但这些算法都处于探索与研究阶段,仍存在各自的不足。差分进化算法作为一种基于群体进化的新型仿生智能优化算法,近年来引起广大研究者的关注,该算法具有实现简单、全局优化能力强等优点,但也存在不能直接用于离散问题、易陷入局部最优、收敛速度较慢等不足之处,目前尚未被应用于云计算领域。本文拟将其改进后应用于云计算任务调度问题。改进分两个步骤:首先,对基本差分进化算法本身的不足进行改进;然后以此为基础,面向云计算任务调度问题的特点,再作进一步的改进。针对差分进化算法本身的不足,本文提出了改进的离散差分进化算法:MDDE。提出了差分进化算法的离散化原则,使之可以应用到组合优化问题。然后,针对算法优化性能的不足,提出了进化过程前后期的概念。在进化前期设置了并行多种群,并定义了一种综合差分策略,即进化前后期分别采用差分策略DE1与DE2,均衡了MDDE算法的全局探索和局部挖掘的能力,保证了算法在进化前期拥有良好的全局探索能力,在后期拥有快速的局部挖掘性能。提出了贪婪交叉原则,并新增了变异操作之后的选择机制,进一步加快了算法的收敛速度。将MDDE算法应用到TSP问题的求解中,验证了其优化性能。结合云计算任务调度的特点,本文在MDDE算法的基础上提出了满足QoS需求的云计算任务调度算法:TC-MDDE。按照离散化原则,结合任务顺序编码法,针对差分运算出现非法编码的问题,定义了“绝对值取整求余映射法”进行非法编码的合法化处理,保证了变异操作的顺利进行。针对云计算任务调度问题中QoS的多样化需求,定义了参数灵活的适应度函数,能够根据用户不同的时间和成本需求,调整时间与成本的权值系数,达到对调度结果的影响。为了验证TC-MDDE算法的调度功能与优化性能,本文将其部署到基于CloudSim的云计算仿真环境中。随机产生仿真实验所需的任务需求、资源性能与价格等数据矩阵,进行TC-MDDE算法在不同权值系数下的功能验证实验和与其他调度算法的性能对比实验。功能验证实验的结果表明,TC-MDDE算法通过对权值系数的调节,能够求出满足不同时间和成本需求的调度结果,达到满足多样化QoS需求的功能。性能测试实验结果显示,TC-MDDE算法对比其他调度算法,在收敛速度和优化结果上都更为优秀。