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:
% https://www.mathworks.com/help/gads/custom-output-function-for-genetic-algorithm.html
end

More Answers (0)

Categories

Find more on Get Started with Optimization Toolbox in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!