Recover the best individual of each population in GA

3 views (last 30 days)
The documentation ga doc especifies that the output arguments consider the final population only. Is there a way to recover the best individual of each generation?

Accepted Answer

Sam Chak
Sam Chak on 29 Jun 2022
Yes, @Jaime Trivino, it is possible according to this section.
state.Score % gives you the scores of the current population
state.Best % gives you the vector containing the best score in each generation
To do this, you must call the OutputFcn through specifying it the option
option = optimoptions('ga', 'OutputFcn', @gaoutfun)
[x, fval, exitflag, output] = ga(fun, nvars, A, b, Aeq, beq, lb, ub, nonlcon, options)
and then create the ga output function m-file that must have the following calling syntax:
function [state, options, optchanged] = gaoutfun(options, state, flag)
% See example here:

More Answers (0)


Community Treasure Hunt

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

Start Hunting!