コード例 #1
0
ファイル: MenuPresenter.cs プロジェクト: grtwall/JM.DCJ
 public virtual void Enter(MenuItem item)
 {
     if (FunctionSelected != null &&
         FunctionSelected.ContainsKey(item.Text))
     {
         FunctionSelected[item.Text]();
     }
 }
        public MinFunGettingStarted
        (
            int earlyPopulation,
            int numberOfParents,
            int numberOfGenerationRepetitions,
            int choromosemeLenght,
            double sigma,
            int kIndividualTornomantInit,

            int a,
            int b,
            int c,

            FunctionSelected functionSelected,
            Selection selectionList,
            Recombination recombinations,
            Mutation mutations
        )
            : base(earlyPopulation, numberOfParents, numberOfGenerationRepetitions)
        {
            ChoromosemeLenght        = choromosemeLenght;
            Sigma                    = sigma;
            KIndividualTornomantInit = kIndividualTornomantInit;
            A = a;
            B = b;
            C = c;
            FunctionSelected = functionSelected;
            SelectionList    = selectionList;
            Recombinations   = recombinations;
            mutationList     = mutations;
        }
コード例 #3
0
 public Task <MinFuncIndividual> ExcutedFitness(MinFuncIndividual individual, FunctionSelected functionSelected)
 {
     if (functionSelected == FunctionSelected.Function2)
     {
         individual.Fitness = 50 - individual.Fitness;
         return(Task.FromResult(individual));
     }
     return(Task.FromResult(new MinFuncIndividual(null)));
 }
コード例 #4
0
 public Task <MinFuncIndividual> HandleFitness(MinFuncIndividual individual, int chromosomeLength, FunctionSelected functionSelected)
 {
     if (functionSelected == FunctionSelected.Function2)
     {
         double result = 0.0;
         result             = Implement(individual, chromosomeLength);
         individual.Fitness = result;
         return(Task.FromResult(individual));
     }
     return(Task.FromResult(new MinFuncIndividual(null)));
 }
コード例 #5
0
        public async Task <MinFuncIndividual> ProcessHanldeExcutedFitness(MinFuncIndividual fitnessIndividual, FunctionSelected function)
        {
            foreach (IFunction functionRequest in _functionRequestList)
            {
                var result = await functionRequest.ExcutedFitness(fitnessIndividual, function);

                if (result is MinFuncIndividual && result.Generate != null)
                {
                    return(result);
                }
            }
            return(null);
        }
コード例 #6
0
        public async Task <MinFuncIndividual> ProcessHandleFitness(MinFuncIndividual individual, int chromosomeLength, FunctionSelected function)
        {
            foreach (IFunction functionRequest in _functionRequestList)
            {
                var result = await functionRequest.HandleFitness(individual, chromosomeLength, function);

                if (result is MinFuncIndividual && result.Generate != null)
                {
                    return(result);
                }
            }
            return(null);
        }