I'm working on an optimization problem using genetic algorithm. To increase diversity of potential solutions I'm using multi-population approach: Instead of evolving one population I run 10 populations in parallel for some number of steps (let's say 10000). Then I mix elements (solutions) between populations and repeat the cycle.

Are there any known, beneficial strategies for mixing populations in such approach? Right now I combine all populations in one, and divide them back in totally random manner, but I feel that it might not be the best solution.

  • $\begingroup$ It depends on what you are trying to optimise. Multi-population multi-optimization GAs like VEGA or NSGA(1/2/3) won't work, because the introduction of multiple population is equivalent to the average fitness over the populations. Multi-population single optimization instead could be beneficial. Ps: are your solution geographically distributed over some space? $\endgroup$
    – Chaos
    Aug 29, 2021 at 12:44
  • $\begingroup$ @Chaos "introduction of multiple population is equivalent to the average fitness over the populations" - are you sure? from my experiments multipopulation works better that one population with the same size as sum of many populations. Many populations help to avoid sticking to local minimum. I don't know about VEGA or NSGA. $\endgroup$
    – PanJanek
    Sep 4, 2021 at 10:20


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.