コード例 #1
0
 public void Initialize()
 {
     for (var i = 0; i < ConfigurationClass.MarimePopulatie; i++)
     {
         var cromozom = new Cromozom();
         cromozom.Initialize(ConfigurationClass.NumarGene);
         _populatie.Add(cromozom);
     }
     _populatie.Sort();
 }
コード例 #2
0
        public List <Cromozom> Recombinare(Cromozom other)
        {
            var copii = new List <Cromozom>();

            var first  = new Cromozom();
            var second = new Cromozom();

            for (var i = 0; i < Gene.Count; i++)
            {
                var genaNouaFirst = (this.Gene[i].Valoare + other.Gene[i].Valoare) / 2;
                var genaNoua2nd   = (this.Gene[i].Valoare + other.Gene[i].Valoare) * 2;
                first.Gene.Add(new Gena(genaNouaFirst));
                second.Gene.Add(new Gena(genaNoua2nd));
            }
            copii.Add(first);
            copii.Add(second);
            return(copii);
        }