最大最小蚂蚁系统(Max-min Ant System,MMAS)是一种性能优良的启发式算法,常用于解决组合优化问题.当解决的目标问题规模较大、迭代轮次较多时,最大最小蚁群算法存在运行时间长的缺点.试验以开源串行包ACOTSP为基准,利用GPU多线程并发的优势,采用并行蚂蚁策略将MMAS在CPU-GPU协同异构计算平台上并发实现.算法在GPU上运行时的影响因素,如数据传输、内存层次、库函数调用等,也得到有效分析,并作出针对性优化.试验最终取得了高达13倍的加速,表明并行MMAS策略具有高效性和实用性.
Max-min Ant System is a kind of heuristic algorithm with excellent performance, which is commonly used to solve combinatorial optimization problems. But it costs a long time when scale of the target problem is large as well as iterations are a lot. The experiment took the open source packet ACOTSP as a reference, used the advantage of multi- threaded GPU, and implemented ACO algorithm on CPU-GPU platform by parallel ants strategy. While the parallel algorithm is running on GPU, we also analyzed the impact factors carefully, such as data transmission, memory hierarchy, library calls et al, and made useful optimization. Eventually, the experiment made 13 times speedup, proving the parallel strategy is highly efficient and applicable.