Esempio n. 1
0
        public GeneStringFitnessPair[] getBestPair(int num)
        {
            GeneStringFitnessPair[] toReturn = new GeneStringFitnessPair[num];

            Array.Copy(resultPairs, toReturn, num);

            return toReturn;
        }
Esempio n. 2
0
        public GeneStringFitnessPair[] getBestPair(int num)
        {
            GeneStringFitnessPair[] bestGeneStringFitnessPairs = new GeneStringFitnessPair[num];

            for (int n = 0; n < num; n++)
            {
                bestGeneStringFitnessPairs[n] = population[n];
            }

            return bestGeneStringFitnessPairs;
        }
Esempio n. 3
0
        private void ThreadPoolCallBack(Object context)
        {
            GeneStringIndexPair geneStringIndexPair = (GeneStringIndexPair)context;

            GeneString geneString = geneStringIndexPair.genestring;
            int index = geneStringIndexPair.index;

            int fitness = fitnessFunction.evaluate(geneString);

            fitnessEvaluated[index] = new GeneStringFitnessPair(geneString, fitness);

            if (Interlocked.Decrement(ref tasksQueued) == 0) tasksDone.Set();
        }