Exemplo n.º 1
0
        private void Setup()
        {
            _population = new IDna <char> [TotalPopulation];

            for (var i = 0; i < _population.Length; i++)
            {
                _population[i] = new PhraseDna(_target.Length);
            }
        }
Exemplo n.º 2
0
        public IDna <char> Crossover(IDna <char> partner)
        {
            var midpoint = Random.Next(Genes.Length);
            var child    = new PhraseDna(Genes.Length);

            for (var i = 0; i < Genes.Length; i++)
            {
                if (i < midpoint)
                {
                    child.Genes[i] = partner.Genes[i];
                }
                else
                {
                    child.Genes[i] = Genes[i];
                }
            }

            return(child);
        }