private void run() { for (int i = 0; i < 50; i++) { System.out.println("Generation " + i); evaluator.evaluate(population); population.applySelector(eliteSelector); population.applyCrossover(quantileSelector); population.applyMutation(quantileSelector); population.nextGen(); } List<ParametersIndividual> fittest = population.getFittest(10); for (ParametersIndividual p : fittest) { System.out.println(p); } }
private void setUp() { evaluator = new EloEvaluator(); population = Population.generateRandom(ParametersIndividual.GENERATOR, 100); quantileSelector = new QuantileSelector<>(0.2); // mutation and crossover rate at 20% eliteSelector = new EliteSelector<>(70); }