算法介绍
该算法是基于蚁群算法,加上命令转换迁移技术融合而成。主要用于解决虚拟机的放置问题(VMP)。
该算法的突出之处在于能够考虑多种资源,如CPU,内存等,而不仅仅只是单一条件。
除此之外,在处理瓶颈情况时,即有些资源需求较多,而另一中较少,有较好的表现。
同时,还可以应对服务器均质,异质的情况,即服务器的配置是否相同。
该算法的流程图如下所示。在实现过程中需要注意以下几点:
1. 在每一次迭代中,需要对所有蚂蚁的结果找出最优解,即当代最优,Sb.
2. 每一次构造完一个解之后都要进行信息素的局部更新。
3. 在对信息素进行全局更新之前,需要针对解的可行性进行判断,如果可以,则直接全局更新和赋值。如果不是,则需要进行局部寻找,不断调整解,使得变得可行。具体的方法详见论文和实现。
算法具体实现情况以及实验结果可以从github主页上下载,欢迎大家指出错误和不足。 引用请注明出处或联系作者。