Ejemplo n.º 1
0
        //Метод создания новой популяции
        public static List <Individ> CreateNewPopulation(int CountIndivid, int MaxParameterValue, int CountParameter, Random rnd)
        {
            //Создание листа с индивидами
            List <Individ> individs = new List <Individ>();

            for (int i = 0; i < CountIndivid; i++)
            {
                individs.Add(Individ.NewRandomIndivid(MaxParameterValue, CountParameter, rnd));
            }
            return(individs);
        }
Ejemplo n.º 2
0
        //Метод смешения генов
        public static Individ Mix(Individ par1, Individ par2, int MaxParameterValue, int CountParameter, Random rnd)
        {
            Individ NewInd = Individ.NewRandomIndivid(MaxParameterValue, CountParameter, rnd);

            for (int i = 0; i < CountParameter; i++)
            {
                if (rnd.Next(2) == 0)
                {
                    NewInd.Parameters[i] = par1.Parameters[i];
                }
                else
                {
                    NewInd.Parameters[i] = par2.Parameters[i];
                }
            }
            return(NewInd);
        }