I would look at a larger population, 32 people were a very small population. I usually run a GA with a population of at least the ^ 2 chromosome range (from experience) to get a good initial distribution of people.
A possible way to speed up work with a large population is to generate different flows (1 per person, possibly in batches) while performing your fitness function (usually this is the most expensive part of GA).
Assuming a population of 32 and a quad-core system generate threads in batches of 8 (2 threads per processor will alternate well), and you can work about 4 * faster.
Therefore, if you have a time limit for GA execution, this may be a solution.
source share