首页 > 范文大全 > 正文

云计算环境中优化遗传算法的资源调度策略

开篇:润墨网以专业的文秘视角,为您筛选了一篇云计算环境中优化遗传算法的资源调度策略范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

【摘要】 资源调度是云计算的核心问题,传统的遗传算法虽然可以用于云计算环境中的资源调度,但是由于传统遗传算法存在收敛慢、易早熟等特点,所以这种算法并不适应于多聚类环境下的密集型任务调度。基于此,我们提出了云计算环境中优化遗传算法资源调度策略以弥补传统遗传算法的不足。本文主要通过对云计算概念的介绍以及如何优化遗传算法的资源调度策略来展开讨论。

【关键词】 云计算环境概念 优化遗传算法 资源调度策略

近些年来,随着计算机技术的飞速发展,云计算计算模式应运而生。Web2.0技术以及系统虚拟化等技术的发展促进了云计算的不断完善。目前,云计算被广泛地应用于商业计算。它作为下一代并行与分布式计算,具有超大规模、抽象化、高可靠性、通用性等特点,受到国内各领域的广泛关注。接下来,我们就具体的介绍云计算环境中如何通过资源调度策略进行优化遗传算法。

一、云计算技术概述

随着计算机技术的发展以及计算模式的创新,云计算成为一种新的计算模式。云计算是一种将分布式计算、并行计算、网格计算、虚拟化计算以及Web服务等技术进行融合和结合新的计算机技术而形成的新的计算方式。它的优点更加突出,计算方式更加便捷,计算结果更加权威。随着现代技术的不断发展,云计算也逐渐应用到各个领域之中。

通过对云计算的整体评估和了解,我们将云计算分为两个方面。一方面是能够提供用来构造应用程序的基础设施,包括计算机方面的硬件设施和软件设施。这一方面使得云计算能够涵盖一般计算方式的特点,并突破了传统计算方式的束缚。另一方面是提供建立在基础设施上的云应用。通过建立在基础设施上的云应用,不仅可以增加基础设施本身的应用范围,而且能够扩大云应用的适用范围,将云应用应用到更多的领域之中。

我们除了根据云应用的功能将其非为两个方面之外,还根据它的使用者将其分为私有云和公共云。顾名思义,私有云是私人专有的云,需要用户自行购买硬件设备,然后自己通过所购买的设备进行维护整个系统,系统中的所有数据均是用户自己进行管理的,信息内容也是和用户密切相关的,用户对于系统的管理具有自主性。私有云的规模相对有限,在使用的过程中,由于只有简单的硬件基础设备,所以云计算的高性能性和高性价比的优势不能够充分的显示出来。而对于公共云来说,这些方面就是有云服务提供商所提供的,并不需要用户进行投资。公共云的使用中,用户不需要自行购买设备,也不需要自己进行系统的维护。他们只需要向云服务提供商支付一定的费用,就可以免费的使用云计算。整个公共云系统的设备维护和管理以及系统的升级的工作都是由云服务提供商负责,不需要用户进行管理。这就使得公共云在使用和维护中具有具有更大的灵活性和成本优势。

二、优化遗传算法的资源调度策略

接下来,我们根据Baidu的MaP/Reduce模型,对云计算环境下优化遗传算法的资源调度策略进行具体的介绍。首先,在传统的遗传算法中,我们所采用的是一种基于染色体编码方式和适应度函数改进的遗传算法去实现分布式大规模任务的资源调度。在这个过程中,我们通常是将任务总数作为染色体基因串的长度,而具体到每一个任务时,我们会将每一个任务所映射的资源ID作为染色体的基因值。但是这种做法会造成系统的超载,编码的基因串的长度远远地超过了基因池内的资源总数,所以在具体的计算时会造成算法进化速度慢,并且容易出现错误的情况,由于在基因池内无法找到相应的资源,所以有些基因串在具体的计算中可能会出现乱码和无法计算的情况,最终导致收敛到最优解的时间过长。

云计算模式的出现很好的解决了这一技术难题,它弥补了传统的遗传计算方式的缺陷,在技术上完善了传统遗传计算方式。在云计算环境中,我们改进了染色体的编码方式,通过将资源总数作为染色体的基因串长度、每个资源所映射的任务总数以及任务ID作为染色体的基因值来加快算法的收敛速度。这种编码方式所形成的基因串的总数小于系统资源池内的总数,所以在计算过程中可以达到最优的资源调度,从而达到提高计算速度和计算准确度的目的。这也是云计算环境中优化遗传算法的资源调度策略的方式之一,同时也是被各个领域所接受并广泛应用的原因之一。这种改进染色体编码的形式,很好的弥补了传统遗传计算的缺陷,不仅能够全面的提高收敛速度,而且还能够提高正确率以增加通过遗传计算来正确预测种群进化方向的目标。另外,由于云计算环境的动态异构的特性,所以我们在对适应度函数进行设计的时候,不仅要充分的考虑到资源节点动态的任务处理能力,还要充分的考虑到异构环境下任务的映射时间和结果的汇聚时间问题。只有充分的考虑到这两个方面,我们才能够在云计算环境中对遗传计算实现最有计算。与此同时,在算法的初始阶段和接近收敛的阶段,还要对适应度函数作出调整,确保通过最优的遗传计算来预测种群的正确进化方向以及寻求更广阔的寻优空间。

1、染色体的编码和种群的初始化。染色体本身的编码方式有很多,这里我们采用资源-任务的间接实数编码方式来进行介绍。这种编码方式的的主要步骤是:首先对染色体进行预编码,设有m个任务,设定任务的ID={1;2;3;4,…,m},n个资源节点,设定资源的ID={1,2,3,…,n},那么我们就可以得到染色体的基因串长度为任务总数m,染色体基因值为资源ID。假设某一参数的取值范围是[umin,umax],我们用长度为l的二进制编码符号串来表示该参数,则它总共能够产生 2l种不同的编码,参数编码时的对应关系如下:

00000000…00000000=0 umin

00000000…00000001=1 umin+δ

……

11111111…11111111=2l1 umax

其中,δ为二进制编码的编码精度。

当我们确定了染色体的编码方式之后,还需要进行种群的初始化,由于初始的种群具有多样性和不确定性,所以在这里我们采用随机的方式来产生初始种群,种群的大小我们设定为Scale。下面是由初始化种群形成适应度值最优的染色体的图解。

2、基于最优跨度和负载均衡的双适应度函数。适应度函数是通过最有跨度和负载均衡来衡量的。对于任何一种染色体来说,它的任务资源分配方案的最优跨度应该是该分配方案下最晚完成任务的资源节点所用的总任务的执行时间。

3、选择复制。遗传算法对个体适应性的评价方式是选择操作。选择操作也是实现群体优良基因传播的基本方式。在科研角度上通过选择复制可以将种群内的基因进行自由的组合,从而组合出最优的基因组和。

4、交叉。产生新个体的主要方法是交叉算子。交叉算子能够决定遗传算法的全局搜索能力。在具体的操作中,我们从全局的角度出发去寻找交叉对。即基因重组。交叉对是按照较大的概率从群体中选择2个个体进行交换2个个体某位或某些位基因。通过对交叉对的研究,我们能够将种群内的基因进行简单的组合,从而发现最优基因以及简单的对种群的进化方向进行预测等。

5、变异。产生新个体的辅助方法则是变异算子。交叉算子虽然能够实现全局搜索,但是它却做不到对搜索空间的细节进行局部的搜索。在这个时候,如果我们采用变异算子来调整个体编码串中的部分基因值,就可以从局部角度出发式个体更加逼近最优解。交叉算子和变异算子的完美结合有利于我们在遗传算法中进行全面的搜索能力的提高。

三、算法性能的正确评估

上面我们采用的Baidu中的MaP/Reduce模型进行介绍,接下来我们通过对云仿真器上的CloudSim进行仿真计算的介绍。CloudSim是在离散时间模拟包SimJava上开发的一种函数库,CloudSim继承了GridSim的编程模型,不仅突破了原有模型的局限性而且形成了属于自己的一套新型计算模式。CloudSim具有以下几个特点:首先,CloudSim能够做到支持大型云计算的基础设施的建模和仿真,这对于传统的仿真计算模式来说是不可能实现的。其次CloudSim是一个自足的支持数据中心、服务人、调度和分配策略的平台。该平台包含了各种软件结构框架和体系结构组件,从而扩大了资源池的资源总数,并且所包含的大量软件对提高收敛速度也有很大的帮助,对提高遗传计算的正确率也就不言而喻了。CloudSim所包含的软件结构框架和体系结构组件包括SimJava、GridSim、CloudSim、UserCode4各层次。其中的CIS和DataCenterBroker能够很好的实现资源发现和信息交互,这是整个CloudSim模拟调度的核心,这种算法主要是在DataCenterBroker中实现的。这两个特点很好的体现了改进后的遗传算法的优点,使得改进后的遗传算法比传统的遗传算法的收敛速度更快,性能更优秀。这两点不仅仅表现在任务执行时间最短上面,同时也表现在能够满足资源负载均衡上面。它可以很好的用于大梁任务的资源调度上。而进行大量的资源调度正是云计算环境的特性以及它被广泛应用在各个领域的主要原因。所以,本位所提出来的遗传算法能够很好的使用在云计算环境中的资源调度上面。

四、总结

本文提出了一种改进遗传算法的资源调度算法,该方法是参考云计算的Map/Reduce模型,在染色体编码上结合云计算环境中海量数据处理和大规模任务执行的特性,设计合理的染色体编码方案,通过对目标函数的设定,设计出一种基于最有跨度和负载均衡的双适应度函数,然后再结合云计算环境中的其他系统的配合,通过资源调度策略达到遗传算法的最优。

参 考 文 献

[1] 英海燕,王友波. 基于自适应遗传算法的模板匹配研究[J]. 微电子学与计算机. 2008(01)

[2] 李冰. 云计算环境下动态资源管理关键技术研究[D]. 北京邮电大学. 2012

[3] 葛新. 基于云计算集群扩展中的调度问题研究[D]. 中国科学技术大学. 2011

[4] 李栋. 基于经济原则的网格调度系统研究[D]. 北京化工大学,2012年