private IAlgorithm CreateOSGP() { // configure strict osgp var alg = new OffspringSelectionGeneticAlgorithm.OffspringSelectionGeneticAlgorithm(); var prob = new SymbolicRegressionSingleObjectiveProblem(); prob.MaximumSymbolicExpressionTreeDepth.Value = 7; prob.MaximumSymbolicExpressionTreeLength.Value = 15; alg.Problem = prob; alg.SuccessRatio.Value = 1.0; alg.ComparisonFactorLowerBound.Value = 1.0; alg.ComparisonFactorUpperBound.Value = 1.0; alg.MutationProbability.Value = 0.15; alg.PopulationSize.Value = 200; alg.MaximumSelectionPressure.Value = 100; alg.MaximumEvaluatedSolutions.Value = 20000; alg.SelectorParameter.Value = alg.SelectorParameter.ValidValues.OfType<GenderSpecificSelector>().First(); alg.MutatorParameter.Value = alg.MutatorParameter.ValidValues.OfType<MultiSymbolicExpressionTreeManipulator>().First(); alg.StoreAlgorithmInEachRun = false; return alg; }