- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
改进的蚁群算法在云计算资源调度应用.
改进的蚁群算法在云计算资源调度应用
作者:王传奇
摘要:为了提高云计算环境下资源调度的效率,提出一种降低任务执行时间和成本,并且兼顾系统负载均衡的加强型蚁群算法(Enhanced Time and cost constrains Load Balanced Ant Colony Optimization,ETCLACO),算法在必威体育精装版各种蚁群算法的基础上,创新地改进信息素和启发因子,利用CloudSim工具进行仿真测试,与标准的ACO算法,必威体育精装版的LBACO算法做对比仿真,实验结果表明ETCLACO算法在任务的执行时间,成本以及系统负载均衡方面均优于这两种算法,提高了资源利用率。
关键词: 云计算;蚁群算法;负载均衡;任务调度
1 引言
云计算是由并行计算,分布式计算,网格计算,虚拟化技术等传统的计算机、网络技术发展而来的一种新型计算服务商业模式,其宗旨是把具有可伸缩的,动态的,分散的资源进行虚拟化以后以付费的方式提供给用户,终端用户无需知道提供服务的物理机的具体位置和分布情况,只需要提交任务给云计算中心,云计算机中心就会分配相应的资源来完成这些任务,由于云计算中的任务量巨大,每时每刻都有大量的任务提交给云计算中心,因为对于云系统而言,合理地分配资源,采用有效的资源调度算法,让整个云计算资源得到充分利用,让任务执行的时间、成本降低是我们研究的重点。
目前,针对云计算资源调度的算法很多,特别是提出了一些改进的调度算法,比如参考文献[1] 提出利用遗传算法在云计算中的运用,使任务的平均完成时间和总的任务完成时间较短,文献[5]提出定义任务完成时间和成本的适应度函数算法,优化了任务的完成时间和成本, 必威体育精装版的文献[6]提出了基于负载均衡蚁群优化算法的云计算任务调度算法LBACO,通过调整信息素因子,改进信息素更新规则,实现任务调度的负载均衡,以上这些算法不同程度地改进了云计算中资源调度的算法,但是都鲜有共同兼顾到时间成本负载三大要素,本文在已有的蚁群算法基础之上,提出通过时间、成本、负载来改进信息素和启发因子的蚁群算法(Enhanced Time and cost constrains Load Balanced Ant Colony Optimization,ETCLACO),使得在任务调度过程中,有效地使任务的完成时间最小,成本最低,系统负载最均衡,提高了系统资源利用率。
2 蚁群算法简介
2.1 蚁群调度算法原理
蚁群算法是Dorigo在1992年提出的一种基于群体智能的启发式仿生优化算法,主要模拟蚂蚁觅食的行为来解决离散域的组合优化等问题,在蚂蚁觅食的路径上,会在其经过的路径上留下标记,也就是信息素,后面的蚂蚁会根据路径上已经留下的信息素的浓度来决定自己下一步的前进方向,在选择路径的时候,蚂蚁会选择信息素浓度相对较高的路径,如果一条路径被越多的蚂蚁选择,那么在该路径上留下的信息素也就越多,从而导致后面的蚂蚁选择该路径的概率也就越大,大量蚂蚁选择信息浓度高 的路径的行为就体现出蚁群的整体运动机制。该算法具有正反馈,鲁棒性,并行性,可扩展性以及高求解精度并且易与其他方法结合的优点,能在海量的解空间中最大限度地寻找全局最优解,特别是解决组合优化问题方面,根据状态转移概率来有哪些信誉好的足球投注网站解的空间,结合信息素的更新,找到最优解。
2.2 蚁群算法模型
设定蚂蚁数量为,城市数量为,然后我们做如下定义
将只蚂蚁随机分配给个城市,在城市 中的第只蚂蚁在时刻选择下一个城市 的概率为
(1)
其中表示在时刻路径上的信息素浓度,表示在时刻路径上的启发因子,定义,表示路径的距离,为信息素的启发因子,表示蚂蚁在觅食过程中在路径上留下的信息素的相对重要程度,当值越大,表明蚂蚁之间的正反馈作用越大,蚂蚁就会选择前面路径经过蚂蚁最多的路径,为期望启发因子,表示启发函数的重要程度,表示第只蚂蚁允许访问的下一个城市的节点,被访问过的城市会加入禁忌表,用 表示蚂蚁目前迭代次数,表示最大的迭代次数。
3 改进蚁群算法的任务调度
3.1 云计算任务调度描述
云计算资源调度问题可以描述为:云环境下,将个独立的任务分配到个虚拟机上执行,其中表示任务的集合,表示虚拟资源节点的集合,每个子任务只能在一个虚拟资源节点上运行,任务与虚拟资源节点之间的分配关系可以用矩阵来表示
(2)
其中表示子任务在虚拟节点的分配关系。云资源调度策略,就是如何将要执行的任务如何合理地分配到虚拟机上去执行,分配的方案尽量整个系统的任务执行成本相对最低,执行时间最短,系统的负载最均衡。
3.2 时间成本约束函数
表示任务在虚拟机上的执行时间,利用任务与虚拟机分配矩阵可以构造执行时间矩阵:
(3
文档评论(0)