void update(final EvolutionResult<?, Double> result) { final String generation = Long.toString(result.getGeneration()); final String bestFitness = _format.format(result.getBestFitness()); final double age = result.getPopulation().stream() .collect(averagingLong(p -> p.getAge(result.getGeneration()))); _generationTextField.setText(generation); _bestFitnessTextField.setText(bestFitness); _populationAgeTextField.setText(_format.format(age)); _evaluationTimeTextField.setText(format( result.getDurations().getEvaluationDuration() )); }
EvolutionResult<G, C> with(final ISeq<Phenotype<G, C>> population) { return EvolutionResult.of( getOptimize(), population, getGeneration(), getTotalGenerations(), getDurations(), getKillCount(), getInvalidCount(), getAlterCount() ); }
@Override public void accept(final EvolutionResult<?, C> result) { accept(result.getDurations()); _killed.accept(result.getKillCount()); _invalids.accept(result.getInvalidCount()); _altered.accept(result.getAlterCount()); result.getPopulation() .forEach(pt -> accept(pt, result.getGeneration())); }