Accord.Genetic.GEPChromosome.RecombinationOnePoint C# (CSharp) Method

RecombinationOnePoint() public method

One-point recombination (crossover).
public RecombinationOnePoint ( GEPChromosome pair ) : void
pair GEPChromosome Pair chromosome to crossover with.
return void
        public void RecombinationOnePoint(GEPChromosome pair)
        {
            var rand = Generator.Random;

            // check for correct pair
            if ((pair.length == length))
            {
                // crossover point
                int crossOverPoint = rand.Next(length - 1) + 1;

                // length of chromosome to be crossed
                int crossOverLength = length - crossOverPoint;

                // swap parts of chromosomes
                Recombine(genes, pair.genes, crossOverPoint, crossOverLength);
            }
        }