Optimizing PolyACO Training with GPU-Based Parallelization

  • Torry TuftelandEmail author
  • Guro ØdesneltvedtEmail author
  • Morten GoodwinEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9882)


A central part of Ant Colony Optimisation (ACO) is the function calculating the quality and cost of solutions, such as the distance of a potential ant route. This cost function is used to deposit an opportune amount of pheromones to achieve an apt convergence, and in an active ACO implementation a significant part of the runtime is spent in this part of the code. In some cases, the cost function accumulates up towards 94 % in its run time making it a performance bottle neck.

In this paper we parallelize and move the central parts of the cost function to Graphics Processing Unit (GPU). We further test and measure the performance using the ACO classification approach PolyACO. This GPU based parallelization has a tremendous impact on the performance. The duration of the cost function is reduced to 0.5 % of its original runtime. The over all performance of PolyACO implementation is reduced down towards a remarkable 7 % of its original running time — an improvement factor of 14.


ACO Cost function GPU 


  1. 1.
    Parallel Programming and Computing Platform \({|}\) CUDA \({|}\) NVIDIA\({|}\)NVIDIA.
  2. 2.
    Numba: NumPy aware dynamic Python compiler using LLVM (2012–2016).
  3. 3.
    CUDA, page Version ID: 697481561, December 2015.
  4. 4.
    Bai, H., OuYang, D., Li, X., He, L., Yu, H.: Max-min ant system on gpu with cuda. In: 2009 Fourth International Conference on Innovative Computing, Information and Control (ICICIC), pp. 801–804. IEEE (2009)Google Scholar
  5. 5.
    Brito, J., Martínez, F.J., Moreno, J.A., Verdegay, J.L.: An aco hybrid metaheuristic for close-open vehicle routing problems with time windows and fuzzy constraints. Appl. Soft Comput. 32, 154–163 (2015)CrossRefGoogle Scholar
  6. 6.
    Dawson, L., Stewart, I.: Improving ant colony optimization performance on the gpu using cuda. In: 2013 IEEE Congress on Evolutionary Computation (CEC), pp. 1901–1908. IEEE (2013)Google Scholar
  7. 7.
    Dorigo, M., Birattari, M., Stützle, T.: Ant colony optimization. IEEE Comput. Intell. Mag. 1(4), 28–39 (2006)CrossRefGoogle Scholar
  8. 8.
    Garcia, M.P., Montiel, O., Castillo, O., Sepúlveda, R., Melin, P.: Path planning for autonomous mobile robot navigation with ant colony optimization and fuzzy cost function evaluation. Appl. Soft Comput. 9(3), 1102–1110 (2009)CrossRefGoogle Scholar
  9. 9.
    Goodwin, M., Yazidi, A.: Ant Colony Optimisation Based Classification using Two-Dimensional Polygons, September 2016Google Scholar
  10. 10.
    Lian, T.A., Llave, M.R., Goodwin, M., Bouhmala, N.: Towards multilevel ant colony optimisation for the euclidean symmetric traveling salesman problem. In: Ali, M., Kwon, Y.S., Lee, C.-H., Kim, J., Kim, Y. (eds.) IEA/AIE 2015. LNCS, vol. 9101, pp. 222–231. Springer, Heidelberg (2015)Google Scholar
  11. 11.
    Llanes, A., Vélez, C., Sánchez, A.M., Pérez-Sánchez, H., Cecilia, J.M.: Parallel ant colony optimization for the hp protein folding problem. In: Ortuño, F., Rojas, I. (eds.) IWBBIO 2016. LNCS, vol. 9656, pp. 615–626. Springer, Heidelberg (2016). doi: 10.1007/978-3-319-31744-1_54 CrossRefGoogle Scholar
  12. 12.
    Martens, D., De Backer, M., Haesen, R., Vanthienen, J., Snoeck, M., Baesens, B.: Classification with ant colony optimization. IEEE Trans. Evol. Comput. 11(5), 651–665 (2007)CrossRefGoogle Scholar
  13. 13.
    Pedemonte, M., Nesmachnow, S., Cancela, H.: A survey on parallel ant colony optimization. Appl. Soft Comput. 11(8), 5181–5197 (2011)CrossRefGoogle Scholar
  14. 14.
    Salama, K.M., Freitas, A.A.: Ant colony algorithms for constructing bayesian multi-net classifiers. Intell. Data Anal. 19(2), 233–257 (2015)Google Scholar
  15. 15.
    Sttzle, T., Hoos, H.H.: MAXMIN ant system. Future Gener. Comput. Syst. 16(8), 889–914 (2000). CrossRefGoogle Scholar
  16. 16.
    Tao, C., Xiankun, S., Hua, H., Xiaoming, Y.: Image edge detection based on aco-pso algorithm. Image 6(7), 47–54 (2015)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Department of ICT, Institute for Technology and SciencesUniversity of AgderAgderNorway

Personalised recommendations