public EvolutionaryProgramming(CreateSolutionMethod solution_generator, int dimension, int pop_size = 100, int bout_size = 5) { mPopSize = pop_size; mDimension = dimension; mBoutSize = bout_size; mSolutionGenerator = solution_generator; if (mSolutionGenerator == null) { throw new NullReferenceException(); } }
public EvolutionStrategy(CreateSolutionMethod solution_generator, int dimension, int mu = 30, int lambda = 20) { mPopSize_mu = mu; mOffspringSize_lambda = lambda; mDimension = dimension; mSolutionGenerator = solution_generator; if (mSolutionGenerator == null) { throw new NullReferenceException(); } }
public DifferentialEvolution(CostFunction f) { mSolutionGenerator = (dimension, constraints) => { double[] x_0 = f.CreateRandomSolution(); return(x_0); }; mPopSize = f.DimensionCount * 10; mDimension = f.DimensionCount; mUpperBounds = f.UpperBounds; mLowerBounds = f.LowerBounds; }
public EvolutionaryProgramming(CostFunction f, int popSize = 100, int boutSize = 5) { mSolutionGenerator = (dimension, constraints) => { double[] x_0 = f.CreateRandomSolution(); return(x_0); }; mPopSize = popSize; mDimension = f.DimensionCount; mBoutSize = boutSize; mUpperBounds = f.UpperBounds; mLowerBounds = f.LowerBounds; }
public EvolutionStrategy(CostFunction f, int mu = 30, int lambda = 20) { mSolutionGenerator = (dimension, constraints) => { double[] x_0 = f.CreateRandomSolution(); return(x_0); }; mPopSize_mu = mu; mOffspringSize_lambda = lambda; mDimension = f.DimensionCount; mUpperBounds = f.UpperBounds; mLowerBounds = f.LowerBounds; }
public DifferentialEvolution(int dimension, CreateSolutionMethod solution_generator) { mPopSize = dimension * 10; }