public virtual List <ITestParameters> DetermineChromosomeParameters(ECTestMeasureList testMeasureList) { var testParameters = new List <ITestParameters>(); this.SimplifiedParamMeasures.Clear(); this.MinLengthChromosome.Clear(); //adds all possible sub-combinations var subCombinations = new HashSet <IGPChromosome>(); foreach (IGPChromosome parameters in testMeasureList) { var testMeasure = (ECTestMeasure)testMeasureList.GetTestMeasure(parameters); this.MinLengthChromosome[testMeasure] = parameters.Length; this.SimplifiedChromosomesMeasures[testMeasure] = new List <ECTestMeasure>(); var allParamCombinations = parameters.AllCombinations; subCombinations.UnionWith(allParamCombinations); foreach (var paramCombination in allParamCombinations) { this.SimplifiedParamMeasures[paramCombination] = testMeasure; } } testParameters.AddRange(subCombinations); //sorts chromosome parameters by length testParameters.Sort(); return(testParameters); }
public FitnessFunction( IOptimizationTestFactory optimizationTestFactory, ECTestMeasureList testMeasureList) { this.optimizationTestFactory = optimizationTestFactory; this.testMeasureList = testMeasureList; }