Skip to content

Conversation

@eiro10
Copy link

@eiro10 eiro10 commented Oct 11, 2025

This pull request resolves anyoptimization/pymoo#748 by correcting the axis used for strength calculation in the SPEA2Survival._do method.
Previously, strength S was computed as S = (M == 1).sum(axis=0), which incorrectly counts the number of times each individual is dominated by others.
According to the SPEA2 algorithm (see Zitzler, E., Laumanns, M., & Thiele, L. (2001). SPEA2: Improving the Strength Pareto Evolutionary Algorithm. TIK-Report 103), strength should be calculated as the number of individuals each solution dominates: S = (M == 1).sum(axis=1).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant