Efficient exploitation of the Xeon Phi architecture for the Ant Colony Optimization (ACO) metaheuristic

Abstract

In recent years, the use of compute-intensive coprocessors has been widely studied in the field of Parallel Computing to accelerate sequential processes through a Graphic Processing Unit (GPU). Intel has recently released a GPU-type coprocessor, the Intel Xeon Phi. It is composed up to 72 cores connected by a bidirectional ring network with a Vector Process Unit (VPU) on large vector registers. In this work, we present novel parallel algorithms of the well-known Ant Colony Optimization (ACO) on the recent many-core platform Intel Xeon Phi coprocessor. ACO is a popular metaheuristic algorithm applied to a wide range of NP-hard problems. To show the efficiency of our approaches, we test our algorithms solving the Traveling Salesman Problem. Our results confirm the potential of our proposed algorithms which led to distinct improvements of performance over previous state-of-the-art approaches in GPU. We implement and compare a set of algorithms to deal with the different steps of ACO. The matrices calculation in the proposed algorithms efficiently exploit the VPU and cache in Xeon Phi. We also show a novel implementation of the roulette wheel selection algorithm, named as UV-Roulette (unique random value roulette). We compare our results in Xeon Phi to state-of-the-art GPU methods, achieving higher performance with large size problems. We also exposed the difficulties and key hardware performance factors to deal with the ACO algorithm on a Xeon Phi coprocessor.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

References

  1. 1.

    Dorigo M, Stützle T (2004) Ant colony optimization. MIT Press, Cambridge

    Google Scholar 

  2. 2.

    Dorigo M, Birattari M, Stützle T (2006) Ant colony optimization. IEEE Comput Intell Mag 1(4):28–39. doi:10.1109/MCI.2006.329691

    Article  Google Scholar 

  3. 3.

    Dorigo M, Blum C (2005) Ant colony optimization theory: a survey. Theor Comput Sci 344(2–3):243–278. doi:10.1016/j.tcs.2005.05.020. http://www.sciencedirect.com/science/article/pii/S0304397505003798

  4. 4.

    Dorigo M (1992) Optimization, learning and natural algorithms. Ph.D. thesis, Politecnico di Milano, Italy

  5. 5.

    NVIDIA GPU Computing. http://www.nvidia.com/object/what-is-gpu-computing.html

  6. 6.

    Hwu W (2012) Programming massively parallel processors, second edition: a hands-on approach. Morgan Kaufmann, Burlington

    Google Scholar 

  7. 7.

    Jeffers J, Reinders J (2013) Intel Xeon Phi coprocessor high performance programming. Elsevier, Philadelphia. ISBN:9780124104143

  8. 8.

    Wang E, Zhang Q, Shen B, Zhang G, Lu X, Wu Q, Wang Y (2014) High-performance computing on the Intel Xeon Phi(TM): how to fully exploit mic architectures. Springer, Berlin

    Google Scholar 

  9. 9.

    Lawler EL, Lenstra JK, Kan AR, Shmoys DB (1985) The traveling salesman problem: a guided tour of combinatorial optimization, vol 3. Wiley, New York

    Google Scholar 

  10. 10.

    Dorigo M, Di Caro G (1999) New ideas in optimization. Chap. The ant colony optimization meta-heuristic. McGraw-Hill Ltd., Maidenhead, pp 11–32

    Google Scholar 

  11. 11.

    Dorigo M, Di Caro G, Gambardella LM (1999) Ant algorithms for discrete optimization. Artif Life 5(2):137–172. doi:10.1162/106454699568728

    Article  Google Scholar 

  12. 12.

    Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. Trans Syst Man Cybern Part B 26(1):29–41. doi:10.1109/3477.484436

    Article  Google Scholar 

  13. 13.

    PRACE (2017) (Partnership for advanced computing in Europe). Best Practice Guide Intel Xeon Phi v2.0. http://www.prace-ri.eu/best-practice-guides/

  14. 14.

    Cecilia JM, García JM, Nisbet A, Amos M, Ujaldon M (2013) Enhancing data parallelism for ant colony optimization on GPUs. J Parallel Distrib Comput 73(1):42–51. doi:10.1016/j.jpdc.2012.01.002

    Article  Google Scholar 

  15. 15.

    Dawson L, Stewart IA (2013) Improving ant colony optimization performance on the GPU using CUDA. In: Proceedings of the IEEE Congress on Evolutionary Computation, CEC 2013, Cancun, Mexico, June 20–23 pp. 1901–1908. IEEE (2013). doi:10.1109/CEC.2013.6557791

  16. 16.

    Delevacq A, Delisle P, Gravel M, Krajecki M (2013) Parallel ant colony optimization on graphics processing units. J. Parallel Distrib. Comput. 73(1):52–61. doi:10.1016/j.jpdc.2012.01.003

    Article  Google Scholar 

  17. 17.

    Sato M, Tsutsui S, Fujimoto N, Sato Y, Namiki M (2014) First results of performance comparisons on many-core processors in solving QAP with ACO: kepler GPU versus xeon PHI. In: Genetic and Evolutionary Computation Conference, GECCO ’14, Vancouver, BC, Canada, July 12-16, 2014, Companion Material Proceedings, pp. 1477–1478. ACM. doi:10.1145/2598394.2602274. http://dl.acm.org/citation.cfm?id=2598394

  18. 18.

    Tirado F, Urrutia A, Barrientos R.J (2015) Using a coprocessor to solve the ant colony optimization algorithm. In: 34th International Conference of the Chilean Computer Science Society (SCCC), pp. 1–6. doi:10.1109/SCCC.2015.7416584

  19. 19.

    TSPLIB Library. http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/

  20. 20.

    Dorigo M, Maniezzo V, Colorni A (1996) Ant system: optimization by a colony of cooperating agents. IEEE Trans Syst Man Cybern Part B 26(1):29–41. doi:10.1109/3477.484436

    Article  Google Scholar 

Download references

Acknowledgements

This research was supported by the Project of the Universidad Católica del Maule (Chile) “Plan de Desarrollo Anual Facultad de Ingeniería. Convenio de Desempeño”. This work was partially supported by the Project FONDEF IDeA en 2 Etapas ID15i10142, “Estimación del Contenido de Aceite en Olivas en base a Tecnologías no Destructivas” (Olive Oil Content Estimation based on non Destructive Technologies), Scientific and Technological Development Support Fund (FONDEF), Government of Chile. Powered@NLHPC: This research was partially supported by the supercomputing infrastructure of the NLHPC (ECM-02).

Author information

Affiliations

Authors

Corresponding author

Correspondence to Ricardo J. Barrientos.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Tirado, F., Barrientos, R.J., González, P. et al. Efficient exploitation of the Xeon Phi architecture for the Ant Colony Optimization (ACO) metaheuristic. J Supercomput 73, 5053–5070 (2017). https://doi.org/10.1007/s11227-017-2124-5

Download citation

Keywords

  • ACO
  • Metaheuristic
  • Xeon Phi
  • Parallel computing
  • Coprocessors