Geometric Semantic Genetic Programming (GSGP) is a state-of-the-art machine learning method based on evolutionary computation. GSGP performs search operations directly at the level of program semantics, which can be done more efficiently than operating at the syntax level like most GP systems. Efficient implementations of GSGP in C++ exploit this fact, but not to its full potential. This paper presents GSGP-CUDA, the first CUDA implementation of GSGP and the most efficient, which exploits the intrinsic parallelism of GSGP using GPUs. Results show speedups greater than 1,000× relative to the state-of-the-art sequential implementation, during the model training process. Additionally, our implementation allows the user to seamlessly make inferences over new data through the best evolved model, opening the possibility of using GSGP on Big Data problems.
- Genetic Programming
- Geometric Semantic Genetic Programming