Exemplo n.º 1
0
 public Individual(Individual other)
 {
     SuccessProbability = other.SuccessProbability;
     sigma         = other.sigma;
     evolutionPath = (RealVector)other.evolutionPath.Clone();
     Mean          = (RealVector)other.Mean.Clone();
     lowerCholesky = (double[, ])other.lowerCholesky.Clone();
     Selected      = true;
     strategy      = other.strategy;
 }
Exemplo n.º 2
0
 public Individual(RealVector mean, double pSucc, double sigma, RealVector pc, double[,] c, MOCMAEvolutionStrategy strategy)
 {
     Mean               = mean;
     lastStep           = new RealVector(mean.Length);
     SuccessProbability = pSucc;
     this.sigma         = sigma;
     evolutionPath      = pc;
     CholeskyDecomposition(c);
     Selected      = true;
     this.strategy = strategy;
 }
Exemplo n.º 3
0
        protected MOCMAEvolutionStrategy(MOCMAEvolutionStrategy original, Cloner cloner) : base(original, cloner)
        {
            random    = cloner.Clone(original.random);
            gauss     = cloner.Clone(original.gauss);
            solutions = original.solutions != null?original.solutions.Select(cloner.Clone).ToArray() : null;

            stepSizeLearningRate           = original.stepSizeLearningRate;
            stepSizeDampeningFactor        = original.stepSizeDampeningFactor;
            targetSuccessProbability       = original.targetSuccessProbability;
            evolutionPathLearningRate      = original.evolutionPathLearningRate;
            covarianceMatrixLearningRate   = original.covarianceMatrixLearningRate;
            covarianceMatrixUnlearningRate = original.covarianceMatrixUnlearningRate;
            successThreshold = original.successThreshold;
        }
Exemplo n.º 4
0
        public Individual(Individual other, Cloner cloner)
        {
            strategy      = cloner.Clone(other.strategy);
            Mean          = cloner.Clone(other.Mean);
            sigma         = other.sigma;
            evolutionPath = cloner.Clone(other.evolutionPath);
            lastStep      = cloner.Clone(other.evolutionPath);
            lastZ         = cloner.Clone(other.lastZ);
            lowerCholesky = other.lowerCholesky != null?other.lowerCholesky.Clone() as double[, ] : null;

            Fitness = other.Fitness != null?other.Fitness.Select(x => x).ToArray() : null;

            PenalizedFitness = other.PenalizedFitness != null?other.PenalizedFitness.Select(x => x).ToArray() : null;

            Selected           = other.Selected;
            SuccessProbability = other.SuccessProbability;
        }