TensorFlow Enabled Genetic Programming
Genetic Programming, a kind of evolutionary computation and machine learning algorithm, is shown to benefit significantly from the application of vectorized data and the TensorFlow numerical computation library on both CPU and GPU architectures. The open source, Python Karoo GP is employed for a series of 190 tests across 6 platforms, with real-world datasets ranging from 18 to 5.5M data points. This body of tests demonstrates that datasets measured in tens and hundreds of data points see 2-15x improvement when moving from the scalar/SymPy configuration to the vector/TensorFlow configuration, with a single core performing on par or better than multiple CPU cores and GPUS. A dataset composed of 90,000 data points demonstrates a single vector/TensorFlow CPU core performing 875x beffer than 40 scalar/Sympy CPU cores. And a dataset containing 5.5M data points sees CPU configurations out-performing CPU configurations on average by 1.3x.
K. Staats et al., "TensorFlow Enabled Genetic Programming," Proceedings of the Genetic and Evolutionary Computation Conference (2017, Berlin, Germany), pp. 1872-1879, Association for Computing Machinery (ACM), Jul 2017.
The definitive version is available at https://doi.org/10.1145/3067695.3084216
The Genetic and Evolutionary Computation Conference, GECCO 2017 (2017: Jul. 15-19, Berlin, Germany)
Keywords and Phrases
Artificial intelligence; Calculations; Evolutionary algorithms; Genetic algorithms; Graphics processing unit; Learning algorithms; Learning systems; Multicore programming; Open source software; CPU configuration; Multi core; Numerical computations; Open sources; Parallel; Real-world datasets; Single vectors; Vectorized; Genetic programming; Evolutionary Computation; GPU; Machine Learning; Multicore; Tensor Flow
International Standard Book Number (ISBN)
Article - Conference proceedings
© 2017 Association for Computing Machinery (ACM), All rights reserved.