1 package net.bmahe.genetics4j.gp.program;
2
3 import net.bmahe.genetics4j.core.chromosomes.TreeNode;
4 import net.bmahe.genetics4j.gp.Operation;
5
6 public interface ProgramGenerator {
7
8 TreeNode<Operation<?>> generate(final Program program);
9
10 <T> TreeNode<Operation<T>> generate(final Program program, final int maxDepth);
11
12 <T, U> TreeNode<Operation<T>> generate(final Program program, final int maxDepth, final Class<U> rootType);
13 }