2.分析与设计惯性权重ω
影响算法搜索结果和收敛速度的关键参数就是ω,经过先前的大量实验研究,ω过大有利于全局寻优,ω过小有利于局部寻优。根据ω取值对搜索结果的影响,可以采用经典的线性递减方式设定ω的值如公式(5)所示。
3.确定算法的适应度函数
根据1.3提出的算法目标,通过对目标优化要求的不同设定相应的权值,实现多目标优化。本算法的目标是在迭代次数范围内找到使适应度函数值最小的资源分配方案,即最终的虚拟机放置方案。适应度函数可以定义如下公式:
4.种群初始化引入按资源需求和实时负载分配的思想
根据虚拟机对资源的需求情况选择能够满足其要求的物理机,即所选的物理机一定要满足虚拟机对资源的需求,同时根据1.2的定义4物理机部署虚拟机后不至于过载。
5.引入分组思想
首先将种群随机分成若干份等量的小粒子群,然后在每一个子群里随机设置参数,进行粒子群优化算法寻优,最后再对全部最优解取最小值为最终最分配方案。
2.2.2 算法步骤
Stepl:按照初始种群方案生成有M个粒子的种群,每个粒子编号为l到M,将M个粒子随机分成N个独立的子群空间,每个子群的粒子个数为m=M/N:
Step3:根据适应度函数公式(6)依次计算每个子群中每个粒子的适应值F;
Step4:对于每个粒子,比较个体当前适应值和历史最优位置pibest,如果当前适应值较好,则将此粒子当前的位置作为当前最优的位置并更新pibest,否则保持pibest不变;
Step5:对于每个粒子,比较当前最优位置pibest和子群体中整体的最优位置Pqgbest,如果当前最优位置较好,则将其作为当前群体最优位置并更新Pqgbest,否则Pqgbest不变(q=l,2…N);
Step6:根据公式(1)和公式(2)更新每个粒子的速度和位置信息;
3 仿真实验
3.1 实验环境和参数设置
为了验证基于分组的粒子群优化算法GPSO在云环境下虚拟机资源分配问题上的可行性,本文扩展了CloudSim平台进行仿真实验,并与轮询算法Round Robin和标准的PSO算法进行了比较。
3.2 结果与分析
3.2.1 负载不均衡度E的比较
系统的负载不均衡度随着虚拟机数量的增加而减小。图2表示三种算法分别在不同虚拟机规模时系统的负载不均衡度。由图2可知GPSO算法的负载不均衡度E小于其他两个算法,说明GPSO算法在负载平衡方面的性能优于其他两个算法。这是因为PSO算法初始种群是随机生成的,而GPSO算法的初始种群是根据系统的实时负载随机生成,并将负载不均衡度作为目标函数进行搜索。轮询算法没有考虑物理机实时负载,也没有优化目标策略。
3.2.2 资源利用率比较
GPSO算法比其它两种算法的资源利用率更高,这是因为目标函数包含了对系统资源利用率的优化策略,从而一定程度上避免了系统资源的浪费。
4 结论
本文针对现有虚拟机资源放置算法只考虑云资源的能耗和使用率,忽略负载均衡对系统性能影响的问题,提出了基于分组的改进粒子群算法(Grouped Particle Swarm Optimization:GPSO),通过最小化云数据中心的负载不均衡度达到系统的负载平衡。与标准粒子群算法中随机生成初始种群的方式不同,本文根据系统的实时负载来随机生成初始种群,在算法中引入分组的思想,将该种群进行随机分组,通过比较各组的全局最优解得到最终分配方案。通过CloudSim平台仿真实验表明,改进算法生成的资源分配方案较原算法能有更好的负载均衡、更高的资源利用率,证实了该算法的有效性。
|
核心期刊网(www.hexinqk.com)秉承“诚以为基,信以为本”的宗旨,为广大学者老师提供投稿辅导、写作指导、核心期刊推荐等服务。 核心期刊网专业期刊发表机构,为学术研究工作者解决北大核心、CSSCI核心、统计源核心、EI核心等投稿辅导咨询与写作指导的问题。 投稿辅导咨询电话:18915033935 投稿辅导客服QQ: 投稿辅导投稿邮箱:1003158336@qq.com |