private void updateCurrentIndividualFromSettings(RandomPopulationSettings populationSettings, Individual currentIndividual,
                                                         PathCache <IDistributedParameter> allCurrentDistribuedParameters, PathCache <IDistributedParameter> allBaseDistributedParamters, Gender currentGender)
        {
            //clone of the original origin data
            currentIndividual.OriginData        = populationSettings.BaseIndividual.OriginData.Clone();
            currentIndividual.OriginData.Gender = currentGender;

            //create a new seed for the individual in order to randomize correctly our values
            currentIndividual.GenerateSeed();

            //perform random varation of the origin data according to the settings defined for the population
            perturbate(currentIndividual, populationSettings);

            //Update the distribution according to the new origin data
            _distributedParametersUpdater.UpdateDistributedParameter(allCurrentDistribuedParameters, allBaseDistributedParamters, currentIndividual.OriginData);
        }
Exemple #2
0
        private void updateCurrentIndividualFromSettings(
            RandomPopulationSettings populationSettings,
            Individual baseIndividual,
            Individual currentIndividual,
            PathCache <IDistributedParameter> allCurrentDistributedParameters,
            PathCache <IDistributedParameter> allBaseDistributedParameters,
            Gender currentGender,
            RandomGenerator randomGenerator)
        {
            //clone of the original origin data
            currentIndividual.OriginData        = baseIndividual.OriginData.Clone();
            currentIndividual.OriginData.Gender = currentGender;

            //perform random variation of the origin data according to the settings defined for the population
            perturbate(currentIndividual, populationSettings, randomGenerator);

            //Update the distribution according to the new origin data
            _distributedParametersUpdater.UpdateDistributedParameter(allCurrentDistributedParameters, allBaseDistributedParameters, currentIndividual.OriginData);
        }