optim = new IOptimizer[vennArrangement.length];
for( int i=0; i<vennArrangement.length; ++i )
{
// the following might be replaced with a factory method
errFunc[i] = new VennErrorFunction( new VennArrangement(vennArrangement[i]), params.errorFunction );
switch( params.optimizer )
{
case EvolutionaryOptimizerV1.Parameters.ID:
optim[i] = new EvolutionaryOptimizerV1(random,errFunc[i], params.optEvo );
break;