View Javadoc
1   package net.bmahe.genetics4j.gp.selection;
2   
3   import java.util.Objects;
4   import java.util.random.RandomGenerator;
5   
6   import net.bmahe.genetics4j.core.selection.SelectionPolicyHandler;
7   import net.bmahe.genetics4j.core.spec.AbstractEAExecutionContext;
8   import net.bmahe.genetics4j.core.spec.SelectionPolicyHandlerFactory;
9   
10  public class DoubleTournamentPolicyHandlerFactory<T extends Comparable<T>> implements SelectionPolicyHandlerFactory<T> {
11  
12  	@Override
13  	public SelectionPolicyHandler<T> apply(final AbstractEAExecutionContext<T> eaExecutionContext) {
14  		Objects.requireNonNull(eaExecutionContext);
15  
16  		final RandomGenerator randomGenerator = eaExecutionContext.randomGenerator();
17  		return new DoubleTournamentSelectionPolicyHandler<>(randomGenerator);
18  	}
19  
20  }