The most straightforward way of parallellazing this
kind of application is the exploit the parallelism the is present in
the idea of multiple populations. Another approach would have been
to parallelize some operations within the evolutionary loop but
this would make it very hard to insure compatibility with the serial version
of lil-gp.
One could very well have thought about a parallel evaluation
function for instance. But since this is problem dependent, the user would
be forced to invest him or herself in parallel programming techniques
that are not immediately relevant for their research.
To change the kernel of lil-gp into a parallel kernel the following problems had to be solved: