The run-Time of evolutionary algorithms (EAs) is typically dominated by fitness evaluation. This is particularly the case when the genotypes are complex, such as in genetic programming (GP). Evaluating multiple offspring in parallel is appropriate in most types of EAs and can reduce the time incurred by fitness evaluation proportional to the number of parallel processing units. The most naive approach maintains the synchrony of evolution as employed by the vast majority of EAs, requiring an entire generation to be evaluated before progressing to the next generation. Heterogeneity in the evaluation times will degrade the performance, as parallel processing units will idle until the longest evaluation has completed. Asynchronous parallel evolution mitigates this boffleneck and techniques which experience high heterogeneity in evaluation times, such as Cartesian GP (CGP), are prime candidates for asynchrony. However, due to CGP's small population size, asynchrony has a signi.cant impact on selection pressure and biases evolution towards genotypes with shorter execution times, resulting in poorer results compared to their synchronous counterparts. .is paper: 1) provides a quick introduction to CGP and asynchronous parallel evolution, 2) introduces asynchronous parallel CGP, and 3) shows empirical results demonstrating the potential for asynchronous parallel CGP to outperform synchronous parallel CGP.
- Asynchronous Parallel Evolution,
- Cartesian Genetic Programming,
- Evolutionary Computing,
- Genetic Programming
Available at: http://works.bepress.com/daniel-tauritz/69/