private static void GaussianReal(Chromosome child, Parameters parameters) { // implemented for real valued encoding for (int i = 0; i < child.NoGenes; i++) { if (ExtendedRandom.NextUniform() < _info.Probability) { child.RealGenes[i] = ExtendedRandom.NextNormal(child.RealGenes[i], _info.StandardDeviation); if (child.RealGenes[i] < parameters.EncodingInfo.MinValues[i]) { child.RealGenes[i] = parameters.EncodingInfo.MinValues[i]; } if (child.RealGenes[i] > parameters.EncodingInfo.MaxValues[i]) { child.RealGenes[i] = parameters.EncodingInfo.MaxValues[i]; } } } }