List<EvolutionaryOperator<List<String>>> operators = new ArrayList<EvolutionaryOperator<List<String>>>(2);
if (crossover) {
operators.add(new ListOrderCrossover());
}
if (mutation) {
operators.add(new ListOrderMutation(new PoissonGenerator(1.5, rng), new PoissonGenerator(1.5, rng)));
}
EvolutionaryOperator<List<String>> pipeline = new EvolutionPipeline<List<String>>(operators);
CandidateFactory<List<String>> candidateFactory = new ListPermutationFactory<String>(