diff --git a/src/core/de.evoal.approximative.density/src/main/java/de/evoal/approximative/density/ea/fitness/DensityBasedFitness.java b/src/core/de.evoal.approximative.density/src/main/java/de/evoal/approximative/density/ea/fitness/DensityBasedFitness.java
index 7c36e1cc58e5453dc06f9c67e108a5b455a44de4..d7108f21525f0aa5dee08b1ade96d41f83d05a8f 100644
--- a/src/core/de.evoal.approximative.density/src/main/java/de/evoal/approximative/density/ea/fitness/DensityBasedFitness.java
+++ b/src/core/de.evoal.approximative.density/src/main/java/de/evoal/approximative/density/ea/fitness/DensityBasedFitness.java
@@ -137,7 +137,7 @@ public abstract class DensityBasedFitness extends FitnessDecorator {
             final double probability = sourceData[i].probability(((Number)candidate.get(i)).doubleValue());
             final double offset = 1 / ((Number)ranges.get(surrogate.getInputSpecification().get(i))).doubleValue();
 
-            result *= Math.min(1.0, probability + offset);
+            result *= Math.max(1.0, probability + offset);
         }
 
         return result;
@@ -150,6 +150,6 @@ public abstract class DensityBasedFitness extends FitnessDecorator {
         final double probability = targetData.probability(predicted);
         final double offset = 1 / ((Number)ranges.get(surrogate.getOutputSpecification().get(0))).doubleValue();
 
-        return Math.min(1.0, probability + offset);
+        return Math.max(1.0, probability + offset);
     }
 }