@Override public void update(Observable o, Object arg) { EvolutionaryAlgorithm algorithm = (EvolutionaryAlgorithm) o; BestIndividualSpecification bestSpec = new BestIndividualSpecification(); Individual best; super.update(o, arg); if (algorithm.getState() == EvolutionaryAlgorithm.REPLACE_STATE && arg == null) { best = algorithm.getBestEverIndividual(); super.getLog() .println( algorithm.getGenerations() + " - " + best.getFitness() + " - " + FitnessUtil.meanFitnessValue(algorithm.getPopulation().getIndividuals())); } }