/**
  * Verifies that for different genotypes different configurations are possible.
  *
  * @throws Exception
  * @author Klaus Meffert
  * @since 3.2
  */
 public void testConfigurationInstance_0() throws Exception {
   Class[] types = {CommandGene.IntegerClass};
   Class[][] argTypes = {{}};
   CommandGene[][] nodeSets = {
     {
       new Increment(m_gpconf, CommandGene.IntegerClass, 1),
       new Terminal(m_gpconf, CommandGene.IntegerClass, 1.0d, 2.0d),
     }
   };
   m_gpconf.setPopulationSize(30);
   m_gpconf.setGPFitnessEvaluator(new DeltaGPFitnessEvaluator());
   m_gpconf.setFitnessFunction(new TerminalsOnly());
   m_gpconf.setRandomGenerator(new StockRandomGenerator());
   GPGenotype gen1 =
       GPGenotype.randomInitialGenotype(m_gpconf, types, argTypes, nodeSets, 10, false);
   GPConfiguration conf2 = new GPConfiguration(m_gpconf.getId() + "_2", "noname");
   conf2.setPopulationSize(1);
   conf2.setGPFitnessEvaluator(new DefaultGPFitnessEvaluator());
   conf2.setFitnessFunction(new TerminalsOnly());
   conf2.setRandomGenerator(new StockRandomGenerator());
   GPGenotype gen2 = GPGenotype.randomInitialGenotype(conf2, types, argTypes, nodeSets, 4, false);
   assertNotSame(gen1, gen2);
   assertNotSame(gen1.getGPConfiguration(), gen2.getGPConfiguration());
   assertEquals(30, gen1.getGPConfiguration().getPopulationSize());
   assertEquals(1, gen2.getGPConfiguration().getPopulationSize());
 }