// <summary> /// Mutate the specified individual. /// </summary> /// <param name="individual">The individual to be mutated.</param> /// <param name="mutation_probabilty">The mutation probability to mutate each individual.</param> public override void Mutate(IIndividual individual, float mutation_probabilty) { for (int index = 0; index < individual.Length; index++) { if (FastRandom.GetDouble() <= mutation_probabilty) { individual.ReplaceGene(index, individual.GenerateGene(index)); } } }