public TSPIndividual(TSPIndividual a_father) { Genome = new List <Interfaces.IGene>(); foreach (TSPGene gene in a_father.Genome) { Genome.Add(new TSPGene(gene)); } Mutate(); }
public TSPIndividual(TSPIndividual a_father, TSPIndividual a_mother) { Genome = new List <Interfaces.IGene>(); int cuttingPoint = Parameters.RandomGenerator.Next(a_father.Genome.Count); foreach (TSPGene gene in a_father.Genome.Take(cuttingPoint)) { Genome.Add(new TSPGene(gene)); } foreach (TSPGene gene in a_mother.Genome) { if (!Genome.Contains(gene)) { Genome.Add(gene); } } Mutate(); }