Evaluation of a Master-Slave Parallel Evolutionary Algorithm Applied to Artificial Intelligence for Games in the Xeon-Phi Many-Core Platform

  • Sebastián Rodríguez Leopold
  • Facundo Parodi
  • Sergio Nesmachnow
  • Esteban Mocskos
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 697)


Evolutionary algorithms are non-deterministic metaheuristic methods that emulate the evolution of species in nature to solve optimization, search, and learning problems. This article presents a parallel implementation of evolutionary algorithms on Xeon Phi for developing an artificial intelligence to play the NES Pinball game. The proposed parallel implementation offloads the execution of the fitness function evaluation to Xeon Phi. Multiple evolution schemes are studied to get the most efficient resource utilization. A micro-benchmarking of the Xeon Phi coprocessor is performed to verify the existing technical documentation and obtain detail knowledge of its behavior. Finally, a performance analysis of the proposed parallel evolutionary algorithm is presented, focusing on the characteristics of the evaluated platform.


Evolutionary algorithms Artificial intelligence Xeon Phi 


  1. 1.
    Alba, E., Luque, G., Nesmachnow, S.: Parallel metaheuristics: recent advances and new trends. Int. Trans. Oper. Res. 20, 1–48 (2013)CrossRefzbMATHGoogle Scholar
  2. 2.
    Bäck, T., Fogel, D., Michalewicz, Z. (eds.): Handbook of Evolutionary Computation. Oxford University Press, Oxford (1997)zbMATHGoogle Scholar
  3. 3.
    Dyer, D.: Watchmaker Framework for Evolutionary Computation. Accessed 08 2016
  4. 4.
    Fang, J., Sips, H., Zhang, L., Xu, C., Che, Y., Varbanescu, A.: Test-driving Intel Xeon Phi. In: Proceedings of the 5th ACM/SPEC International Conference on Performance Engineering, pp. 137–148. ACM (2014)Google Scholar
  5. 5.
    Fang, Z., Mehta, S., Yew, P.C., Zhai, A., Greensky, J., Beeraka, G., Zang, B.: Measuring microarchitectural details of multi-and many-core memory systems through microbenchmarking. ACM Trans. Archit. Code Optim. 11(4), 55 (2015)CrossRefGoogle Scholar
  6. 6.
    FCEUX Community: The all in one NES/Famicom Emulator, August 2015.
  7. 7.
    Hausknecht, M., Lehman, J., Miikkulainen, R., Stone, P.: A neuroevolution approach to general Atari game playing. IEEE Trans. Comput. Intell. AI Games 6(4), 355–366 (2014)CrossRefGoogle Scholar
  8. 8.
    Jeffers, J., Reinders, J.: Intel Xeon Phi Coprocessor High-performance Programming. Newnes, Oxford (2013)Google Scholar
  9. 9.
    Murphy, T.: The first level of super mario bros. is easy with lexicographic orderings and time travel. In: Proceeding of 7th Annual SIGBOVIK Conference, pp. 112–133 (2013)Google Scholar
  10. 10.
    Nesmachnow, S.: An overview of metaheuristics: accurate and efficient methods for optimisation. Int. J. Metaheuristics 3(4), 320–347 (2014)CrossRefGoogle Scholar
  11. 11.
    Nesmachnow, S.: Computación científica de alto desempeño en la Facultad de Ingeniería, Universidad de la República. Revista de la Asociación de Ingenieros del Uruguay, no. 61, pp. 12–15 (2010)Google Scholar
  12. 12.
    Nethercote, N., Seward, J.: Valgrind: a framework for heavyweight dynamic binary instrumentation. In: Proceedings of ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation, pp. 89–100 (2007)Google Scholar
  13. 13.
    Parodi, F., Rodríguez Leopold, S., Iturriaga, S., Nesmachnow, S.: Optimizing a pinball computer player using evolutionary algorithms. In: XVIII Latin-Iberoamerican Conference on Operations Research (2016)Google Scholar
  14. 14.
    PCI-SIG: PCI Express Base Specification, Revision 2.1, March 2009Google Scholar
  15. 15.
    Simpson, R.: Evolutionary Artificial Intelligence in Video Games. University of Minnesota (2012)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Sebastián Rodríguez Leopold
    • 1
  • Facundo Parodi
    • 1
  • Sergio Nesmachnow
    • 1
  • Esteban Mocskos
    • 2
    • 3
  1. 1.Universidad de la RepúblicaMontevideoUruguay
  2. 2.Facultad de Ciencias Exactas y Naturales, Departamento de ComputaciónUniversidad de Buenos AiresBuenos AiresArgentina
  3. 3.Centro de Simulación Computacional para Aplicaciones Tecnológicas, CSC-CONICETBuenos AiresArgentina

Personalised recommendations