(4)变异操作
变异操作不能随便改变某个染色体的基因值,否则就会产生错误的调度方案,可以按照一定概率Pm随机地改变染色体的宇符值。操作时,在选中的一个个体中,任意选取个体的两个不同的字符,对其进行交换操作,从而产生新的个体。本处取Pm=0.05。
变异操作只有在停滞状态下才进行。当循环在近一段时间内所产生的最优路径没有变化的时候称为停滞状态。
3 算法分析
为了检验算法的有效性,我们在C枓环境下对算法进行了模拟测试。该实验旨在测试算法的搜索能力。为了在PC机上模拟网络环境,预先设置了5个可用节点机,15个待分配的任务。初始时刻,设置5个节点机的CPU占用率各为5%,20%,35%,45%,60%,分别用基本蚁群算法模型和经遗传算法改进的算法进行模拟。达到收敛所需的循环次数和目标函数值的比较如表1所示。
由试验结果对比分析可知,在目标函数值相近的情况下,改进后算法的循环次数大大减少。
4 结束语
本文根据基本的蚁群算法模型提出了一种蚁群算法与遗传算法相融合的算法模型,由于遗传算法的引入,有效地改善了传统蚁群算法容易陷入局部最优解的缺陷,极大地提高了算法的收敛速度,使算法具有更好的全局搜索能力和更快的收敛速度。通过比较分析可以看出,改进算法可以弥补蚁群算法自身存在的不足,提高负载平衡,有效地解决集群的负载均衡问题。
本文创新点:
(1)把节点机负载偏差率作为目标函数,并把该目标函数小于某一给定值作为算法收敛的条件。
(2)在传统蚁群算法的的基础上,融入了遗传算法,利用遗传算法的进化结果修改各节点信息素,加大了信息素对蚂蚁搜索方向的指导作用,加快了整个算法的收敛速度。