public static Individual factory(boolean init) 
	{
		int size = conf.getInt("gene_size");
		Class<Individual> clazz = conf.getClass("individual", Individual.class);
	
		Individual newIndv = ReflectiveUtils.newInstance(clazz);
		if(init) 
		{
			Gene<?>[] genotype = new Gene<?>[size];
			for( int i = 0; i < genotype.length; i++ )
			{
				Gene<?> gene = ReflectiveUtils.newInstance( allele.map(i) );				
				genotype[i] = gene;
			}
			
			newIndv.setGenotype(genotype);
			newIndv.individualMutationRate = 0.03f;
		}
		
		return newIndv;
	}