pymoo icon indicating copy to clipboard operation
pymoo copied to clipboard

Introduce normalization of F in NSGA3 extreme point calculation

Open NikHoh opened this issue 1 year ago • 1 comments

As the extreme point calculation is happening as a weighted and aggregated optimization (max(__F * weights)), I think it would be better to normalize __F beforehand. Otherwise, the resulting extreme points could have a bias towards objective functions (F) with higher magnitude (in case the objective values of different objective functions are highly unbalanced).

NikHoh avatar Feb 02 '24 16:02 NikHoh

Thanks for your work and PR. Have you benchmark this change? The NSGA3 implementation follows the original C++ code of the paper. Thus, I want to keep it as it is by default. However, if this performs better and is benchmark, introducing this as a parameter might be a good idea.

Can you post some benchmark results here with this change?

blankjul avatar Jul 07 '24 18:07 blankjul