云环境下基于粒子群优化算法的资源调度策略研究+源代码(2)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

云环境下基于粒子群优化算法的资源调度策略研究+源代码(2)


生物学家Craig Reynolds在1987年提出了鸟群聚集模型,在他的仿真中,每一个个体遵循:
(1) 避免与邻域个体相冲撞;
(2) 匹配邻域个体的速度;
(3) 飞向鸟群中心,且整个群体飞向目标。
利用上面三条简单的规则,非常接近的模拟出鸟群飞行的现象。
2.2算法原理
PSO从这种模型中得到启示并用于解决优化问题。PSO 中,每个优化问题的潜在解都是搜索空间中的一只鸟,称之为粒子。所有的粒子都有一个由被优化的函数决定的适应度,每个粒子还有一个速度决定它们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。
PSO初始化为一群随机粒子(随机解),然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个极值来更新自己;第一个就是粒子本身所找到的最优解,这个解称为个体极值;另一个极值是整个种群目前找到的最优解,这个极值是全局极值。另外也可以不用整个种群而只是用其中一部分作为粒子的邻居,那么在所有邻居中的极值就是局部极值。
粒子群算法核心公式 和 ,其中c1和c2为学习因子,w为惯性权重,r1,r2为0~1之间的随机数,为第i个粒子的速度,为每个粒子所出现的最佳位置,为所有粒子出现的最佳位置,为每个粒子所在位置。粒子群算法就是粒子趋向最优粒子运动的算法,最后求出最优的粒子最优位置。
公式中第一部分是粒子的先前速度,说明粒子目前的状态,在搜索初期较大的值有利于跳出局部极小点,搜索后期较小的值有利于算法收敛;第二部分是个体的认知部分,这部分使粒子有较强的全局搜索能力,避免陷入局部极小;第三部分是社会共享信息,这部分将使粒子从其它优秀粒子中汲取经验,加强搜索能力 (责任编辑:qin)