Abstract
It is desirable for a robot to be able to run on-board simulations of itself in a model of the world to evaluate action consequences and test new controller solutions, but simulation is computationally expensive. Modern mobile System-on-Chip devices have high performance at low power consumption levels and now incorporate powerful graphics processing units, making them good potential candidates to host on-board simulations. We use the parallel language OpenCL on two such devices to accelerate the widely-used Stage robot simulator and demonstrate both higher simulation speed and lower energy use on a multi-robot benchmark. To the best of our knowledge, this is the first time that GPGPU on mobile devices have been used to accelerate robot simulation, and moves towards providing an autonomous robot with an embodied what-if capability.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Nvidia 6800 Ultra 40 GFLOPS, 100 W, Pentium 4 7 GFLOPS [11]. Chromebook with Samsung Exynos 5250 72 GFLOPS GPU, 27 GFLOPS CPU, \(<\)7 W.
- 2.
The modified source code is available at https://bitbucket.org/siteks/stage_opencl.
- 3.
The data structures are composed of C++ classes, while OpenCL is based on C99.
References
Bongard, J., Zykov, V., Lipson, H.: Resilient machines through continuous self-modeling. Science 314(5802), 1118–1121 (2006)
Cohen-Or, D., Kaufman, A.: 3D line voxelization and connectivity control. IEEE Comput. Graphics Appl. 17(6), 80–87 (1997)
Dorigo, M., Trianni, V., Şahin, E., Groß, R., Labella, T.H., Baldassarre, G., Nolfi, S., Deneubourg, J.-L., Mondada, F., Floreano, D., et al.: Evolving self-organizing behaviors for a swarm-bot. Auton. Robots 17(2–3), 223–245 (2004)
Grasso, I., Radojkovic, P., Rajovic, N., Gelado, I., Ramirez, A.: Energy efficient hpc on embedded socs: optimization techniques for mali GPU. In: 2014 IEEE 28th International Parallel and Distributed Processing Symposium, pp. 123–132. IEEE (2014)
Hauert, S., Zufferey, J.-C., Floreano, D.: Reverse-engineering of artificially evolved controllers for swarms of robots. In: IEEE Congress on Evolutionary Computation, CEC 2009, pp. 55–61. IEEE (2009)
Kang, S.H., Lee, S-J., Park, I.K.: Parallelization and optimization of feature detection algorithms on embedded gpu. In: International Workshop on Advanced Image Technology (2014)
Keckler, S.W., Dally, W.J., Khailany, B., Garland, M., Glasco, D.: Gpus and the future of parallel computing. IEEE Micro 31(5), 7–17 (2011)
Khronos OpenCL Working Group et al: The OpenCL Specification, Version 1.1 (2010)
Liu, W., Winfield, A.F.T.: Open-hardware e-puck linux extension board for experimental swarm robotics research. Microprocess. Microsyst. 35(1), 60–67 (2011)
Maghazeh, A., Bordoloi, U.D., Eles, P., Peng, Z.: General purpose computing on low-power embedded gpus: has it come of age? In: 2013 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIII), pp. 1–10. IEEE (2013)
Manocha, D.: General-purpose computations using graphics processors. Computer 38(8), 85–88 (2005)
Marques, H.G., Holland, O.: Architectures for functional imagination. Neurocomputing 72(4), 743–759 (2009)
Mondada, F., Bonani, M., Raemy, X., Pugh, J., Cianci, C., Klaptocz, A., Magnenat, S., Zufferey, J-C., Floreano, D., Martinoli, A.: The e-puck, a robot designed for education in engineering. In: Proceedings of the 9th conference on autonomous robot systems and competitions, vol. 1, pp. 59–65 (2009)
Nvidia: NVIDIA CUDA, Compute Unified Device Architecture Programming Guide. NVIDIA, Santa Clara, CA, USA (2007)
O’Dowd, P., Winfield, A.F.T., Studley, M.: Towards accelerated distributed evolution for adaptive behaviours in swarm robotics. In: Belpaeme, T., Bugmann, G., Melhuish, C., Witkowski, M. (eds.) Towards Autonomous Robotic Systems. pp. 169–175. University of Plymouth (2010)
O’Dowd, P.J., Winfield, A.F.T., Studley, M.: The distributed co-evolution of an embodied simulator and controller for swarm robot behaviours. In: 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 4995–5000. IEEE (2011)
Ohkura, K., Yasuda, T., Matsumura, Y., Kadota, M.: GPU implementation of food-foraging problem for evolutionary swarm robotics systems. In: Dorigo, M., Birattari, M., Garnier, S., Hamann, H., Montes de Oca, M., Solnon, C., Stützle, T. (eds.) ANTS 2014. LNCS, vol. 8667, pp. 238–245. Springer, Heidelberg (2014)
Pathania, A., Jiao, Q., Prakash, A., Mitra, T.: Integrated cpu-gpu power management for 3D mobile games. In: Proceedings of the The 51st Annual Design Automation Conference on Design Automation Conference, DAC 2014, pp. 40:1–40:6. ACM, New York (2014)
Pinciroli, C., Trianni, V., O’Grady, R., Pini, G., Brutschy, A., Brambilla, M., Mathews, N., Ferrante, E., Caro, G.D., Ducatelle, F. et al: Argos: a modular, multi-engine simulator for heterogeneous swarm robotics. In: 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 5027–5034. IEEE (2011)
Şahin, E.: Swarm robotics: from sources of inspiration to domains of application. In: Şahin, E., Spears, W.M. (eds.) Swarm Robotics 2004. LNCS, vol. 3342, pp. 10–20. Springer, Heidelberg (2005)
Vaughan, R.: Massively multi-robot simulation in stage. Swarm Intell. 2(2–4), 189–208 (2008)
Vaughan, R.T., Zuluaga, M.: Use your illusion: sensorimotor self-simulation allows complex agents to plan with incomplete self-knowledge. In: Nolfi, S., Baldassarre, G., Calabretta, R., Hallam, J.C.T., Marocco, D., Meyer, J.-A., Miglino, O., Parisi, D. (eds.) SAB 2006. LNCS (LNAI), vol. 4095, pp. 298–309. Springer, Heidelberg (2006)
Wang, G., Xiong, Y., Yun, J., Cavallaro, J.R.: Accelerating computer vision algorithms using opencl framework on the mobile gpu-a case study. In: 2013 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), pp. 2629–2633. IEEE (2013)
Wang, G., Xiong, Y., Yun, J., Cavallaro, J.R.: Computer vision accelerators for mobile systems based on opencl gpgpu co-processing. J. Sig. Process. Syst. 76(3), 283–299 (2014)
Winfield, A.F.T., Blum, C., Liu, W.: Towards an ethical robot: internal models, consequences and ethical action selection. In: Mistry, M., Leonardis, A., Witkowski, M., Melhuish, C. (eds.) TAROS 2014. LNCS, vol. 8717, pp. 85–96. Springer, Heidelberg (2014)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Jones, S., Studley, M., Winfield, A. (2015). Mobile GPGPU Acceleration of Embodied Robot Simulation. In: Headleand, C., Teahan, W., Ap Cenydd, L. (eds) Artificial Life and Intelligent Agents. ALIA 2014. Communications in Computer and Information Science, vol 519. Springer, Cham. https://doi.org/10.1007/978-3-319-18084-7_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-18084-7_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-18083-0
Online ISBN: 978-3-319-18084-7
eBook Packages: Computer ScienceComputer Science (R0)