云计算环境下基于遗传蚁群算法任务调度.docVIP

云计算环境下基于遗传蚁群算法任务调度.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
云计算环境下基于遗传蚁群算法任务调度

云计算环境下基于遗传蚁群算法的任务调度   摘 要:研究了云计算环境下的任务调度问题,通过构造云计算环境下的任务调度模型,提出了一种混合调度算法,该算法是蚁群算法与遗传算法的有机融合。其中的遗传算法采用间接编码方式,结合由遗传算法衍生出的优化解,对蚁群信息素的分布进行初始化处理,使遗传算法的快速搜索能力得到充分利用,并通过克服蚁群算法的起始信息素不足问题,加快了求解速度。云计算环境下的仿真实验结果表明,该混合算法是一种行之有效的任务调度算法。   关键词:云计算;遗传算法;蚁群算法;任务调度   DOI:10.11907/rjdk.143557   中图分类号:TP311.5   文献标识码:A 文章编号:1672-7800(2014)012-0063-02   作者简介:周彬(1980-),男,江苏扬州人,硕士,江苏省扬州商务高等职业学校信息系讲师,研究方向为计算机应用技术。   0 引言    迄今为止,我国课题研究领域仍极度重视对云计算环境下的任务调度问题的研究。然而由于缺乏一个完善的云计算环境下的任务调度理论,导致研究无法通过系统的科学方法进行。无论采用遗传算法还是蚁群算法,都无法获得理想的实际效果。由此可见,实现不同算法的融合具有非常重要的意义。而本文阐述的是一种将蚁群算法与遗传算法进行融合的混合调度算法,即云计算环境下基于遗传蚁群算法的任务调度方法,可极大提高云计算环境下的任务执行效率。   1 云计算环境下的任务调度模型构造   云计算环境下任务调度的含义是:在云计算环境中,将p个彼此相互独立的子任务全部分配到q个虚拟机上执行任务,其中p与q存在以下关系,即:pq。等待处理的任务用集合的形式表示:A={alt;subgt;1lt;/subgt;,alt;subgt;1lt;/subgt;,...,ap},其中ai表示待处理任务中的第i个子任务;云资源中的虚拟机也可用集合的形式表示:B={blt;subgt;1lt;/subgt;,blt;subgt;2lt;/subgt;,...,bq},其中bj表示云资源中第j个虚拟机。   1.1 编码设计   设计合理的编码应综合考虑蚂蚁的种族遗传以及蚂蚁群的初始状态lt;supgt;[1]lt;/supgt;,本文采用间接方式进行编码。设定染色体基因长度为子任务数q,而子任务在虚拟机bj上的执行相当于染色体在基因上的表示,如染色体集合为:{1,2,3,3,4,6,…,p-1,p},表示子任务ai放置在对应的bj上,确保所有子任务a都能放置在全部虚拟机B上。这样就可以通过反推,得到虚拟机bj上所有子任务的集合bj={alt;subgt;1lt;/subgt;,alt;subgt;1lt;/subgt;,...,ai}。由虚拟机bj处理后,计算出完成所有子任务的预测时间,并用矩阵E表示任何一个任务ai被分配在虚拟机bj上执行的预测时间lt;supgt;[2]lt;/supgt;。此外,除了考虑虚拟机本身的处理能力外,还应结合使用R(bj)表示虚拟机bj的运行成本。因此得到虚拟机上的任何一个子任务都可以描述为:   (ai,bj,E(ai,bj))(i∈[1,q],j∈[1,p])   1.2 目标函数构造   通过计算矩阵E可以得出虚拟机bj执行所有任务时,所花费的预测时间X(bj)为:   X(bj)=∑pj=1time(aj,bj) (i∈[1,q])    云计算是通过分布计算进行求解的,而不同任务之间是同步执行的,因此可以将所有虚拟机X(bj)中的最大值作为完成所有子任务所需的时间值lt;supgt;[3]lt;/supgt;,任务完成所需时间可以用如下公式表示:   max(X(bj)) (j∈[1,p])    云计算环境下的任务调度应综合考虑时间要求与其它成本要求,如费用成本等,因此最终得到目标函数为:   ∑pj=1X(bj)×R(bj) (j∈[1,p])   2 遗传算法与蚁群算法融合    蚁群算法是一种对全局进行优化的方法,通过模拟真实的蚁群寻径行为,对种群的原始仿生进化进行计算,能够对相关信息进行正反馈,并能模拟负载情况lt;supgt;[4]lt;/supgt;。然而其缺乏初期信息素,导致需要花费大量时间搜索初期积累的信息素。有研究已得出结论:蚁群算法搜索初期信息素的时间占总时间的70%以上。    遗传算法在求解效率上过于偏低,导致求解过程中容易造成大量多余迭代,使蚁群算法与遗传算法之间的衔接受到影响。以往通过固定遗传算法的迭代次数实现衔接,但无法得到最好效果。本文通过动态融合策略,将遗传算法与蚁群算法有机融合,以确保迭代次数既不冗余又能达到最好的计算效果lt;supgt;[5]lt;/su

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档