为解决人工鱼群算法在寻找食物源的过程中容易陷入局部最优,且搜索速度慢的问题,采用动态权衡因子策略减小算法的强随机性,并构建MPI+OpenMP+STM三级并行编程模型,将鱼群算法中的觅食、聚群、追尾行为规范为事务,实现多线程之间的并发执行。在复杂多峰函数优化问题上进行测试比较,结果表明,该算法有效提高了收敛速度和寻优性能并获得了较高的加速比。
In order to prevent the artificial fish swarm algorithm from being trapped into local optima easily in the process of food source searching, and to improve the searching speed, this paper uses the dynamic weighting factor strategy to reduce the strong randomness of the algorithm, and construct three level of parallel programming model called MPI + OpenMP+ STM. This model normalizes the behaviors such as preying, following, swarming into translations and implement the concurrent exe- cution between multiple threads. The experiment is based on the testing comparison of complex multi-peaks function optimization issue. The results show that our method has improved converging speed and optimization performance efficiently and achieved higher speedup rations.