Find values for best and mean fitness value for each generation in Genetic Algorithm
15 views (last 30 days)
Show older comments
Ankur Shah
on 20 Aug 2021
Commented: Debaditya Gupta
on 31 Mar 2022
After running GA, using Optimization toolbox and code below, the following mean and best fitness value graph was obtained.
[x,fval,exitflag,output,population,score] = ...
ga(@revisepartialmodespring,nvars,[],[],[],[],lb,ub,[],[],options);
How to get the value of best fitness at each generation ?.. I wanted to show a comparison of the best fitness v/s generation for different problems on the same graph. Hence I need values to best fitness at each generation.
1 Comment
Debaditya Gupta
on 31 Mar 2022
How to get similar type of graph in Particle Swarm Optimization in matlab?
Matlab PSO script is showing only iteration vs best fitnes value, but mean fitness value is not showing
Accepted Answer
Alan Weiss
on 22 Aug 2021
Use a Custom Output Function for Genetic Algorithm. Model it on the gaplotbestf plot function. To see that function,
edit gaplotbestf
Alan Weiss
MATLAB mathematical toolbox documentation
2 Comments
Alan Weiss
on 25 Aug 2021
options = optimoptions("ga","OutputFcn",@gascoreoutfun);
rng default % For reproducibility
x = ga(@ps_example,2,[],[],[],[],[],[],[],[],options)
size(gapopulationhistory)
function [state,options,optchanged] = gascoreoutfun(options,state,flag)
persistent history
optchanged = false;
switch flag
case 'init'
history = [min(state.Score),mean(state.Score)];
assignin('base','gapopulationhistory',history);
case 'iter'
history = [history;min(state.Score),mean(state.Score)];
assignin('base','gapopulationhistory',history);
case 'done'
end
end
Alan Weiss
MATLAB mathematical toolbox documentation
More Answers (0)
See Also
Categories
Find more on Genetic Algorithm in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!