From 52c4f074d4d76d376c6733e8fa229f5214d15ea2 Mon Sep 17 00:00:00 2001 From: webbrain-one <295484252+webbrain-one@users.noreply.github.com> Date: Mon, 3 Aug 2026 03:28:34 +0300 Subject: [PATCH] Fix selection sort to minimize fitness The selection logic was incorrectly treating the optimization as a maximization task. Updated the sort comparison to properly prioritize individuals with the lowest fitness values. --- src/main/java/net.furculita/ga/MultiTaskingGA.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/net.furculita/ga/MultiTaskingGA.java b/src/main/java/net.furculita/ga/MultiTaskingGA.java index 3b3a01c..5ec4b61 100755 --- a/src/main/java/net.furculita/ga/MultiTaskingGA.java +++ b/src/main/java/net.furculita/ga/MultiTaskingGA.java @@ -199,7 +199,7 @@ private void selection() { population.getIndividuals().sort((i1, i2) -> { Double di1 = i1.getScalarFitness(); Double di2 = i2.getScalarFitness(); - return di1.compareTo(di2); + return di2.compareTo(di1); }); ArrayList newIndividuals = new ArrayList<>();