Spread and distance calculation in multi objective optimization

2 views (last 30 days)
Hi,
I am using the gamultiobj optimization in Matlab and want to analyze how the algorithm performed.
The state output structure includes the output of average distance and spread for each generation which are the indicators I am looking for.
However, I could not find in the documentation how Matlab calculates these values.
Does someone know the math behind
a) the spread in each generation
b) Distance — Vector of distances of each member of the population to the nearest neighboring member ?
Thank you!

Accepted Answer

Alan Weiss
Alan Weiss on 25 Mar 2013
These quantities apply to multiobjective optimization using gamultiobj. There is a brief mention of the distance measure function in the options documentation. To see the default distance function, enter at the MATLAB command line:
type distancecrowding
I believe that you can find out something about spread in the references for gamultiobj. I would start first with Deb, Kalyanmoy, "Multi-Objective Optimization using Evolutionary Algorithms," John Wiley & Sons, Ltd, Chichester, England, 2001.
You can always read the code to find out exactly what is going on. Enter at the MATLAB command line:
type private/distanceAndSpread
Alan Weiss MATLAB mathematical toolbox documentation

More Answers (0)

Community Treasure Hunt

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

Start Hunting!