public NumericGene(NumericGene gene) { // Min and max are being set BEFORE base constructor is called. // This won't work :'( Guess we just se the value here and don't call base Value = gene.Value; MinValue = gene.MinValue; MaxValue = gene.MaxValue; }
public NumericChromosome(int length, double minValue = double.MinValue, double maxValue = double.MaxValue) { IGene <double> newGene = new NumericGene(minValue, maxValue); if (length < 1) { throw new ArgumentOutOfRangeException(nameof(length), "Length of a chromosome cannot be less than 1."); } for (int i = 0; i < length; i++) { Add(newGene); } }