Multiple population Genetic Algorithm

4 visualizaciones (últimos 30 días)
Hari
Hari el 14 de Sept. de 2022
Comentada: Walter Roberson el 15 de Sept. de 2022
I am using the built in GA function for optimisation with customised creation, crossover, mutation and fitness functions. I have tried 10 runs of GA separately for the same problem and the optimum results is seen to vary in each case. In few cases I have obtained the Global minimum as solution (I have tried on a problem whose global minimum solution is known to me). In other cases the solution is getting stuck at a local minimia. I would like to try a Multiple Population Genetic Algorithm to prevent it from getting stuck at a local minima. Is there a way to implement this using the built in GA function in MATLAB?

Respuesta aceptada

Walter Roberson
Walter Roberson el 14 de Sept. de 2022
Sorry, No.
The internal code for unconstrained ga is able to handle "sub-populations", which for that routine is activated by the PopulationSize option being a vector of values.
However... the public ga() interface does not permit inputting a vector.
  1 comentario
Walter Roberson
Walter Roberson el 15 de Sept. de 2022
The internal code that permits vector population size, is inside a "private" directory, and so cannot be called by functions outside the parent directory.

Iniciar sesión para comentar.

Más respuestas (1)

Sam Chak
Sam Chak el 14 de Sept. de 2022
You can try specifying the Population Options in optimoptions().
opts = optimoptions(@ga, 'PlotFcn', {@gaplotbestf, @gaplotstopping});
opts.PopulationSize = ... ;
opts.InitialPopulationRange = ... ;

Categorías

Más información sobre Genetic Algorithm en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by