基于遗传蚁群算法的云计算任务调度优化策略

来源 :商业2.0 | 被引量 : 0次 | 上传用户:re_man
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  中图分类号:TP301 文献标识码:A
  摘要:通过研究云计算的编程模型和多种分布式任务调度算法,提出一种改进的遗传蚁群算法,使用间接混合编码方式让每条染色体形成了单独的任务调度方案,利用遗传算法生成的优化解,解决了蚁群算法的前期信息素聚集慢的问题,提高了云计算中任务调度的效率。实验结果证明,本算法取得了不错的的结果。
  关键词:云计算;遗传算法;蚁群算法
  一、引言
  近年来,互联网行业快速发展,云计算作为一种新兴的商业模式应运而生。云计算的特点是超大规模、虚拟化、高可靠性和通用性好等。目前,为人们所熟知的云平台有Google云计算、Amazon弹性计算云EC2、百度云平台和阿里巴巴云电子商务等[8]。
  云计算通过网络将大型的计算任务拆分成较小的计算任务,交给大型分布式服务器系统处理,经过计算分析后将计算结果交给用户。因为在云计算的过程需要处理大量的任务,如何保证这些大量的计算任务能够正确、高效的被调度,成为了云计算之中的重点。本文采用遗传蚁群混合算法(Generic Algorithm Ant Colony Optimization, GAACO),通过结合遗传算法前期搜索速度快和蚁群算法后期搜索优势大的优点,对云计算中的任务调度进行优化,通过了仿真对比试验,验证了良好的性能。
  二、算法
  1.云计算编程模型Map/Reduce
  随着云计算的兴起,越来越多的企业提出了自己的“云计划”,大多数企业都以Map/Reduce编程模型的思想来开发自己的云,Map/Reduce特别适合产生和处理大规模的数据集。Map/Reduce首先在Map阶段通过一个Map/Reduce函数把一个大型的计算任务分割成N个较小的子任务给多台工作主机并行执行。然后我们把在Map阶段生成的中间文件在Reduce阶段汇总分析处理,输出M个(M与Reduce任务数量一致)输出文件。
  2.染色体的编码和解码
  根据Map/Reduce编程模型的特点,在遗传算法执行阶段本文针对云环境中的资源和在资源中对任务的分配制定了一种间接编码方式(worker-task-subtask),利用随机函数随机生成一定数量的种群。每一个染色体都是对任务的子任务在资源中的分配方式的抽象。假设有m个任务,每个任务i的子任务数是subTask(i),子任务的总数n为:
  第i个任务中第j个子任务的编号是:
  假设云环境中资源总数为w,那么染色体的长度为w+n。前w(1,2,…w)个整数代表资源(worker),w+1到w+n代表分配给资源执行的子任务(subtask)。本文规定任务队列中的子任务分配到当前任务执行总时间最少的资源中。
  假设w=3,m = 3, subTask (i) = i+1(i的范围是1到3),n的总数为9。那么对染色体实例{1,4,5,9,2,6,12,3,7,8,10,11}做出如下解释:任务1中的包含编号为1,2的子任务,任务2中包含编号为3,4,5,的子任务,任务3中包含编号为6,7,8,9的子任务。子任务1,2,6运行在资源1中,子任务3,9运行在资源2中,子任务4,5,7,8运行在资源3中。对染色体的解码能得到各个task的subTask在worker上的分布情况和各个worker上的任务执行序列。对上述染色体实例的解码为
  Worker(1):[1,2,6], Worker(2):[3,9], Worker(3):[4,5,7,8]
  通过解码后的序列和ETC(Expect Time to Compute)矩阵(ETC[i,j]代表序号为i的subTask在第j个资源上执行完成所需要的时间)可以计算出每个资源的任务队列中所有nSub个子任务的执行时间:
  则完成所有任务的总时间函数为:
  假设第t个任务一共有s个子任务,第t个任务的完成时间为在w个资源中每个资源执行t的子任务的时间最大值:
  任务的平均时间为:
  nTask表示任务数。
  3.遗传算法操作
  3.1选取适应度函数
  适应度函数用来度量种群之中个体在优化计算中有可能达到或者接近最优解的程度,它关系着算法的效率的高低。本文在选取适应度函数时,考虑到了在云计算中需要为多个用户执行不同的任务,在考虑到执行所有任务的效率的同时也要保证每个任务的执行效率在一个用户相对满意的范围之内。本文选用了所有任务(task)执行的平均时间函数avgTime作为主要衡量标准,并结合使用完所有任务完成总时间函数FTime来构造适应度函数:
  在这里我们取u=0.7。在云计算中,所有任务执行的平均时间和任务完成的总时间不成正比,所以我们利用任务完成的总时间的平均值来调整平均任务执行时间的值,u就是调整系数。
  3.2交叉与变异操作
  本文在这里先进行普通的双点交叉处理,再进行维持原有访问顺序和编码格式的修改,并同时采用均匀交换变异方法对个体进行变异处理。利用随机数生成函数生成r∈[0, 1],若r小于交叉概率x1,则进行交叉操作,否则什么也不做。与交叉类似,若r小于变异概率x2,则进行变异操作,否则保持原状。交叉和变异操作完成之后,比较生成的新个体的适应度函数值,留下新个体中适应度增加的个体,抛弃适应度降低的个体。经过多次迭代,生成若干组优化解,为蚁群算法做准备。
  三、蚁群算法与遗传算法的融合
  蚁群算法是根据蚁群集体寻找路径的行为提出的仿生进化算法,它具有提供正反馈,适合并行计算等特点,所以蚁群算法很适合来优化云计算中的并行任务调度效率。本文先采用遗传算法对Map/Reduce模型上的任务进行迭代调度,得到一些较优解,减少蚁群算法前期阶段积累信息素占用的时间。另外,蚁群算法在运行后期的高效率也能弥补遗传算法后期容易造成大量冗余迭代的缺点。   1.遗传算法与蚁群算法的衔接时机选择
  遗传算法的后期易产生冗余迭代,在遗传算法运行合适的迭代次数后融合蚁群算法会优化算法的效率。在选择遗传算法和蚁群算法的衔接时机时,本文在这里借鉴了一种动态算法,首先设定遗传算法的最小迭代次数Gmin和最大迭代次数Gmax,并规定迭代后必须达到的子代种群进化率P,若迭代Gmin次后连续X代(0  2.蚁群算法的信息素设置
  信息素更新模型:τjnew=ρ·τjold + Δτj,其中ρ是信息挥发系数(0≤ρ≤1)。在搜索过程中,蚁群算法根据每个资源上的信息量及启发信息来计算任务在t时刻分配到每个资源上的概率:
  其中α是信息启发因子,β是期望启发因子,表示资源能见度的相对重要性。η作为启发函数,反映了任务分配到指定资源上的期望程度。
  四、小结
  本文根据云计算模型的特点,优化了遗传算法的编码方案;并改进了遗传蚁群算法的融合方法,让两者融合点的定位更加动态化。通过让云计算模型上各个资源节点上的负载更加均衡,任务调度更加高效。
  参考文献:
  [1]段海滨. 蚁群算法原理及其应用[ M ]. 北京: 科学出版社, 2 005: 385- 390.
  [2]王小平, 曹立明. 遗传算法 [ M ]. 西安: 西安交通大学出版社,2002 .
  [3]丁建立,陈增强,袁著址. 遗传算法与蚂蚁算法的融合[J].计算机研究与发展1999,36 (10):1240-1245.
  [4]康岚兰.基于遗传算法的混合蚁群算法研究[D].江西理工大学工学硕士学位论文.2008.
  [5]彭建,于晓翠. 基于遗传算法与蚁群算法动态融合的网格任务调度[J].计算机应用与软件,2009,26(7):121-124.
  [6]吴吉义,平玲娣,潘雪增,等.云计算: 从概念到平台[J]. 电信科学,2009,25( 12) :23-30.
  [7]田文洪,赵勇.云计算—资源调度管理[M].北京:国防工业出版社,2011.
  [8]张为民,唐剑锋,罗治国,钱岭.云计算:深刻改变未来[M].北京:科学出版社,2009.
  [9]房秉毅,张云勇,程莹.云计算国内外发展现状分析[J].电信科学.2010,8A:1-5.
  [10]王庆波,金涬,何乐,等.虚拟化与云计算[M]. 北京:电子工业出版社,2010.
  作者简介:
  许树堃(1991—),男,汉族,内蒙古呼伦贝尔人,工学硕士,单位:大连交通大学计算机科学与技术专业,研究方向:计算机管理信息系统。
其他文献
中图分类号:F044 文献标识码:A  摘要:劳动力流动(workforce flow)是指有一定劳动能力的人在空间上的位移和工作岗位上的变换。包括垂直流动和水平流动。当前我国劳动力流动规模逐年扩大,劳动力流动对于提高农民生活水平,缩小城乡差别,合理配置劳动力资源,促进社会公平与进步等都具有积极作用。  关键词:劳动力;流动;问题;对策  在西方发达国家走向现代化的历程中,无一不伴随着农村劳动力从
期刊
中图分类号:F249.27 文献标识码:A  摘要:探析青岛市现代服务业发展现状,从人才总量、行业人才比重、地区人才分布等方面分析了青岛市现代服务业人才集聚现状,结果表明:青岛市现代服务业人才总量不断增加、地区人才分布趋近合理、人才结构有所优化、人才环境不断优化,但同时也存在人才总量不足、层次不高等问题。最后根据青岛市现代服务业人才集聚现状,并对现代服务业从业人员需求数量进行了预测。  关键词:青
期刊
中图分类号:G822. 1 1 文献标识码:A  摘要:短跑训练是体育项目训练中重要内容之一,短跑训练是对运动员运动速度、运动技术的全面训练与培养,传统的短跑训练主要关注于体能素质、运动能力、动作技术等方面,却忽视了放松运动的重要作用。本文采用文献资料法着重分析了放松运动对短跑训练的作用,同时也总结出放松训练的科学方式和方法。  关键词:放松运动;短跑训练;作用  对于短跑训练来说,运动员不仅要具
期刊
中图分类号:TK229 文献标识码:A  摘要:本文简要介绍了我国工业锅炉存在的问题,对存在的问题进行了原因分析,并给出了一些提高锅炉有效利用率的节能措施。  关键词:工业锅炉;有效利用率;节能措施  一、前言  随着中国经济持续稳定的发展,能源消费也呈现出高速增长的趋势,能源短缺的矛盾日益明显,由于我国能源结构比较单一,能源生产和利用技术相对落后,同时能源工业面临着增加供给与保护环境的双重压力,
期刊
中图分类号:TD528 文献标识码:A  摘要:随着科学技术的发展,PLC技术在各个生产领域中得到广泛应用,对电控装置的稳定性和可靠性控制有重要的决定作用,同时也直接关系着煤矿带式输送机的正常运转。基于此,本文首基于带式输送机电控装置中PLC的作用进行分析研究,分析PLC控制系统的功能,进而对PLC在煤矿带式输送机电控装置中的应用进行探讨。  关键词:电控装置;带式输送机;PLC;应用性能  引言
期刊
中图分类号:C913.7 文献标识码:A  摘要:当今世界,与其他很多国家相比,日本的医疗保险制度可谓相当完善。诸如在保险的分类、费用负担方、需要患者自己负担的医疗费用比重等方面,规定都相当清晰明了。另外,也有日本独具特色的规定。与此同时,现在中国的医疗保险制度才刚刚建立,虽然在不断改进,但依旧还不完善,有很多可以学习借鉴的地方。  关键词:日本;医疗保险制度;启示  一、 日本的医疗保险制度概况
期刊
中图分类号:U279 文献标识码:A  摘要:通过时旅客列车空调装置运用中发生的制冷故障进行统计和分析,提出了提高客车空调装置运用质量的几点建议。  关键词:铁道车辆;客车;空调装置;制冷故障  一、引言  旅客列车空调装置通常由通风系统、制冷系统、采暖系统和自动控制系统四个基本部分组成。客车空调装置通过将一定量的车外新鲜空气和车内再循环空气混合后,经过过滤、冷却或加热、减湿或加湿等处理,以一定的
期刊
中图分类号:F270 文献标识码:A  摘要:随着经济的发展,一个好的管理者已经成为越来越多的人关注的话题,尤其是国美案件发生以后。国美案件是因为管理者过度自信引起的,管理者的过度自信的影响因素有哪些呢?为详细了解影响管理者过度自信的因素,本文通过对社会现有现象的观察和了解,选取一些上市公司的数据,分别从管理者的薪酬﹑管理者的年龄﹑管理者的性别和管理者的教育背景四个方面对管理者过度自信的影响因素进
期刊
中图分类号:F831 文献标识码:A  根据WTO谈判的承诺,中国银行业监督管理委员会于2003年10月3日颁布了《汽车金融公司管理办法》(简称《管理办法》),这一法规的出台,标志着中国正式对外开放了汽车金融市场,也就是从这时开始,国外汽车品牌厂家的金融公司(简称AFC)纷至沓来,足以见得厂家对这块市场的重视。  国内主要汽车金融公司简介  AFC一般具备的使命是协助所属品牌完成批售目标的同时获取
期刊
中图分类号:F301 文献标识码:A  “城中村”房屋拆迁补偿问题是城市建设和改造的难点和重点之一。城市房屋拆迁是城市建设的重要环节,它在改善人民群众的住房条件、促进旧城区改造和城市环境改善等方面做出了很大的贡献。然而,在城市房屋拆迁过程中亦不断出现大量的拆迁纠纷且有的地方还出现过激行为,其根本原因在于我国城市房屋拆迁补偿制度还不完善,难以切实保障被拆迁人的合法权益。  一、 现有“城中村”房屋拆
期刊