예제 #1
0
        private string GetParameters(IMethodOptions options)
        {
            string expandedName = string.Empty;

            if (options.GetType() == typeof(GeneticAlgorithmOptions))
            {
                var genOptions = options as GeneticAlgorithmOptions;
                expandedName = $"I{genOptions.IterationCount}_PS{genOptions.PopulationSize}_CR{genOptions.CrossoverRate:0}_MR{genOptions.MutationRate:0}";
            }
            else if (options.GetType() == typeof(SimulatedAnnealingOptions))
            {
                var simAnnOptions = options as SimulatedAnnealingOptions;
                expandedName = $"I{simAnnOptions.IterationCount}";
            }
            else if (options.GetType() == typeof(AlphaDominantGeneticOptions))
            {
                var alphaDomGenOptions = options as AlphaDominantGeneticOptions;
                expandedName = $"I{alphaDomGenOptions.IterationCount}_PS{alphaDomGenOptions.PopulationSize}_OP{alphaDomGenOptions.CrossoverRate:0}_MC{alphaDomGenOptions.MutationChance:0}";
            }
            return(expandedName);
        }