default EvolutionStream<G, C> stream(
		final Iterable<Genotype<G>> genotypes,
		final long generation
	) {
		return stream(EvolutionInit.of(ISeq.of(genotypes), generation));
	}
Create a new, possibly <em>infinite</em>, evolution stream with the given
initial individuals. If an empty {@code Iterable} is given, the engine's
genotype factory is used for creating the population.

@param genotypes the initial individuals used for the evolution stream.
       Missing individuals are created and individuals not needed are
       skipped.
@param generation the generation the stream starts from; must be greater
       than zero.
@return a new evolution stream.
@throws java.lang.NullPointerException if the given {@code genotypes} is
        {@code null}.
@throws IllegalArgumentException if the given {@code generation} is
        smaller then one
jenetics/src/main/java/io/jenetics/engine/EvolutionStreamable.java