Abstract
Genetic Programming (GP) is a computationally intensive technique which is naturally parallel in nature. Consequently, many attempts have been made to improve its run-time from exploiting highly parallel hardware such as GPUs. However, a second methodology of improving the speed of GP is through efficiency techniques such as subtree caching. However achieving parallel performance and efficiency is a difficult task. This paper will demonstrate an efficiency saving for GP compatible with the harnessing of parallel CPU hardware by exploiting tournament selection. Significant efficiency savings are demonstrated whilst retaining the capability of a high performance parallel implementation of GP. Indeed, a 74% improvement in the speed of GP is achieved with a peak rate of 96 billion GPop/s for classification type problems.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Augusto, D.A., Barbosa, H.J.: Accelerated parallel genetic programming tree evaluation with OpenCL. J. Parallel Distrib. Comput. 73(1), 86–100 (2013)
Cano, A., Zafra, A., Ventura, S.: Speeding up the evaluation phase of GP classification algorithms on GPUs. Soft Comput. 16(2), 187–202 (2012)
Chitty, D.M.: Fast parallel genetic programming: multi-core CPU versus many-core GPU. Soft Comput. 16(10), 1795–1814 (2012)
Chitty, D.M.: Improving the performance of GPU-based genetic programming through exploitation of on-chip memory. Soft Comput. 20(2), 661–680 (2016)
Chitty, D.M.: Faster GPU-based genetic programming using a two-dimensional stack. Soft Comput. 21(14), 3859–3878 (2017)
Frank, A., Asuncion, A.: UCI machine learning repository (2010)
Gathercole, C., Ross, P.: Dynamic training subset selection for supervised learning in genetic programming. In: International Conference on Parallel Problem Solving from Nature, pp. 312–321. Springer (1994)
Gathercole, C., Ross, P.: Tackling the boolean even N parity problem with genetic programming and limited-error fitness. Genet. Program. 97, 119–127 (1997)
Koza, J.R.: Genetic programming (1992)
Maxwell, S.R.: Experiments with a coroutine execution model for genetic programming. In: Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence, pp. 413–417. IEEE (1994)
Park, N., Kim, K., McKay, R.I.: Cutting evaluation costs: an investigation into early termination in genetic programming. In: 2013 IEEE Congress on Evolutionary Computation (CEC), pp. 3291–3298. IEEE (2013)
Poli, R., Langdon, W.B.: Backward-chaining evolutionary algorithms. Artif. Intell. 170(11), 953–982 (2006)
Poli, R., Langdon, W.: Running genetic programming backwards. In: Yu, T., Riolo, R., Worzel, B. (eds.) Genetic Programming Theory and Practice III, Genetic Programming, vol. 9, pp. 125–140. Springer (2006)
Teller, A.: Genetic programming, indexed memory, the halting problem, and other curiosities. In: Proceedings of the 7th Annual Florida Artificial Intelligence Research Symposium, pp. 270–274 (1994)
Teller, A., Andre, D.: Automatically choosing the number of fitness cases: the rational allocation of trials. Genet. Program. 97, 321–328 (1997)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Chitty, D.M. (2019). Exploiting Tournament Selection for Efficient Parallel Genetic Programming. In: Lotfi, A., Bouchachia, H., Gegov, A., Langensiepen, C., McGinnity, M. (eds) Advances in Computational Intelligence Systems. UKCI 2018. Advances in Intelligent Systems and Computing, vol 840. Springer, Cham. https://doi.org/10.1007/978-3-319-97982-3_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-97982-3_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-97981-6
Online ISBN: 978-3-319-97982-3
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)