- 'fitscalingrank' — The default fitness scaling function, 'fitscalingrank', scales the raw scores based on the rank of each individual instead of its score. The rank of an individual is its position in the sorted scores. An individual with rank r has scaled score proportional to 1/√r. So the scaled score of the most fit individual is proportional to 1, the scaled score of the next most fit is proportional to 1/√2, and so on. Rank fitness scaling removes the effect of the spread of the raw scores. The square root makes poorly ranked individuals more nearly equal in score, compared to rank scoring. For more information, see Fitness Scaling.
- 'fitscalingprop' — Proportional scaling makes the scaled value of an individual proportional to its raw fitness score.
Fitness Scaling Options for Genetic Algorithm
7 views (last 30 days)
I am reading the documentation for Genetic Algorithms, and specifically the Fitness Scaling Options section. I cannot quite understand the difference between 'fitscalingrank' and 'fitscalingprop'. Don't they both make the scaled value of an individual proportional to its raw fitness score? Can someone please provide an explanation?
Thank you in advance!
Alan Weiss on 28 Apr 2023
The documentation says this:
In other words, 'fitscalingprop' basically does not scale the score, but 'fitscalingrank' scales the score proportional to its square root. The 'fitscalingrank' explanation expands on the effect of this nonlinear transformation.
MATLAB mathematical toolbox documentation