0,其它
其中,ljb是蚂蚁k从开始城市到当前城市已走过的路径长度。 表示信息的持久性。
(4)计算最佳路径。当全部蚂蚁走完所有城市后,按式(3)计算最优路径长度并保留。
lmin=minlk,k=1,2,...,m(3)
lk第k只蚂蚁所走路径长度。
(5)当所有蚂蚁走完全部城市以后,仅对最优路径上的信息素按式(4)进行更新。
new ij=(1- ) old k(4)ij+ ij
式中, 为全局信息素挥发系数,lk为最优路径长度。
(6)如果设置的迭代次数未完,则清空禁忌表,重复上述过程。
k
( kt
,j,k 云计算现有资源
其它
(5)
0,
式中, j(t)是t时刻资源的信息素浓度; j表示资源的固有属性, j= j(0); 表示信息素的重要程度; 表示资源固有属性的重要程度。
蚂蚁路径变异的个数可由随机数产生,产生随机数可以通过Integer.parsedouble(Math.random()*10)Java代码实现。
本文中云环境资源调度的目标是:在云环境下将M个任务分配到N个资源上,通过改进的蚁群优化算法计算任务在各个资源上执行的平均最短时间,实现系统的资源最优化。即求下面函数的最小值[7]。
minF(mi)=
式中,
mifi(mi)
,i=1,2,...,N
M
(6)
i
mi=M,M是在给定时间段内提交给云计算环境的
总的任务数量,mi表示在资源i上分配mi个任务,0 mi Mmax,Mmax表示在资源i上所能执行的最大任务并行数,可以ii
用实验确定。
云环境下,基于蚁群优化算法的任务调度算法执行流程图如下。
2 改进的蚁群优化算法与云环境下的任务调度
蚁群优化算法有很多优点。目前,提出的蚁群改进的优化算法多种多样,取得了非常好的效果。但是由于算法随机性很大,在解决大规模优化问题时容易限于局部最优解、收敛速度慢的缺陷。本文引入遗传算法,结合它快速随机的全局搜索能力,将遗传算法融入到蚁群优化算法的每一次迭代中,提高了收敛的速度,还保证了原算法的求解精确性。同时引入了逆转变异策略[5],避免了陷入局部最优的风险,维持和增加了种群的多样性。基于这种改进的蚁群优化算法,云计算服务集群可以快速实现资源发现、资源匹配、调度产生、任务执行以及蚂蚁路径的逆转变异。
对于每个资源请求者,云环境服务集群必须推荐出一个较优的任务与资源的组合。采用改进的蚁群优化算法来搜索当前分配策略中的最佳策略,在同一时间内,影响资源状态的因素都可以由信息素来描述,那么调度就能简单、快速获得预测的结果。由于云环境的独特性质,我们需要对TSP问题与云环境资源调度问题的特征差异进行关联,以供改进的蚁群优化算法使用[6]。这些差异主要表现在以下3个方面:
(1)在TSP问题中,城市之间有边相连且这些边是可达的并有不同的距离,而在云环境中,资源没有固定的网络拓扑结构。故在云环境中要利用资源活动的相互作用来模拟拓扑关系。
(2)在TSP问题中,城市与城市之间的信息素用城市之
图1 改进算法的任务调度流程图
3 仿真实验结果
本文扩展了云计算仿真平台CloudSim2 1[8],重写了Dat
(下转第1211页)
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新人文社科基于改进蚁群算法的云环境任务调度研究(3)全文阅读和word下载服务。
相关推荐: