From f8bdb290124e6ee93341d9edfcd521007d42d91b Mon Sep 17 00:00:00 2001
From: "a.croix" <croix.alexandre@gmail.com>
Date: Tue, 2 Apr 2019 15:14:47 +0200
Subject: [PATCH] Some fix thanks to SpotBugs

---
 .../cylab/java/wowa/training/AbstractSolution.java |  6 ++++--
 .../cylab/java/wowa/training/SolutionDistance.java | 14 --------------
 .../java/be/cylab/java/wowa/training/Trainer.java  |  2 +-
 .../java/wowa/training/TrainerParameters.java      |  4 +---
 4 files changed, 6 insertions(+), 20 deletions(-)

diff --git a/src/main/java/be/cylab/java/wowa/training/AbstractSolution.java b/src/main/java/be/cylab/java/wowa/training/AbstractSolution.java
index 0e970b5..7a2e479 100644
--- a/src/main/java/be/cylab/java/wowa/training/AbstractSolution.java
+++ b/src/main/java/be/cylab/java/wowa/training/AbstractSolution.java
@@ -95,9 +95,11 @@ public abstract class AbstractSolution
      */
     @Override
     public final int compareTo(final AbstractSolution solution) {
-        if (this.getFitnessScore() > solution.getFitnessScore()) {
+        if (Double.compare(this.getFitnessScore(),
+                solution.getFitnessScore()) > 0) {
             return 1;
-        } else if (this.getFitnessScore() < solution.getFitnessScore()) {
+        } else if (Double.compare(this.getFitnessScore(),
+                solution.getFitnessScore()) < 0) {
             return -1;
         } else {
             return 0;
diff --git a/src/main/java/be/cylab/java/wowa/training/SolutionDistance.java b/src/main/java/be/cylab/java/wowa/training/SolutionDistance.java
index d609c11..0f3a9d9 100644
--- a/src/main/java/be/cylab/java/wowa/training/SolutionDistance.java
+++ b/src/main/java/be/cylab/java/wowa/training/SolutionDistance.java
@@ -57,18 +57,4 @@ public class SolutionDistance extends AbstractSolution {
 
     }
 
-    /**
-     * @param solution
-     * @return int
-     */
-
-    public final int compareTo(final SolutionDistance solution) {
-        if (this.fitness_score > solution.getFitnessScore()) {
-            return 1;
-        } else if (this.fitness_score < solution.getFitnessScore()) {
-            return -1;
-        } else {
-            return 0;
-        }
-    }
 }
diff --git a/src/main/java/be/cylab/java/wowa/training/Trainer.java b/src/main/java/be/cylab/java/wowa/training/Trainer.java
index 8413884..1e49289 100644
--- a/src/main/java/be/cylab/java/wowa/training/Trainer.java
+++ b/src/main/java/be/cylab/java/wowa/training/Trainer.java
@@ -117,7 +117,7 @@ public class Trainer {
             final int number_of_weight,
             final int population_size) {
         int number_of_random_element = population_size / 2;
-        if (Math.pow(number_of_weight, 2) < population_size / 2) {
+        if (Math.pow(number_of_weight, 2) < population_size / (double) 2) {
             number_of_random_element =
                     (int) (population_size - Math.pow(number_of_weight, 2));
         }
diff --git a/src/main/java/be/cylab/java/wowa/training/TrainerParameters.java b/src/main/java/be/cylab/java/wowa/training/TrainerParameters.java
index ecf538e..b70de00 100644
--- a/src/main/java/be/cylab/java/wowa/training/TrainerParameters.java
+++ b/src/main/java/be/cylab/java/wowa/training/TrainerParameters.java
@@ -31,7 +31,6 @@ public class TrainerParameters {
 
     private Logger logger;
     private int population_size;
-   //private int crossover_rate;
     private int mutation_rate;
     private int selection_method;
     private int number_of_parents;
@@ -130,10 +129,9 @@ public class TrainerParameters {
             throw new IllegalArgumentException(
                     "Crossover rate must be between 1 and 99");
         }
-        //this.crossover_rate = crossover_rate;
         int nbr_parents = Math.round(this.population_size
                 * (1 - (float) crossover_rate / 100));
-        if (nbr_parents % 2 == 1) {
+        if (nbr_parents % 2 != 0) {
             nbr_parents++;
         }
         this.number_of_parents = nbr_parents;
-- 
GitLab