Exemplo n.º 1
0
        private static int AddToSelectionArray(int amount, int idx, Crossover.CrossoverType crossover)
        {
            for (int i = 0; i < amount; i++)
            {
                _selection [idx] = crossover;

                idx = idx + 1;
            }

            return(idx);
        }
Exemplo n.º 2
0
        public CrossoverLogEntry GetNextEntry(Crossover.CrossoverType method)
        {
            switch (method)
            {
            case Crossover.CrossoverType.OnePoint:
                Entries.Add(new OnePointCrossoverLogEntry());
                break;

            case Crossover.CrossoverType.TwoPoint:
                Entries.Add(new TwoPointCrossoverLogEntry());
                break;

            case Crossover.CrossoverType.Random:
                Entries.Add(new RandomCrossoverLogEntry());
                break;

            default:
                throw new NotImplementedException();
            }

            return(Entries.Last());
        }
Exemplo n.º 3
0
        public static Crossover GetCrossover(Crossover.CrossoverType method)
        {
            int hashKey = method.GetHashCode();

            return(_crossovers.ContainsKey(hashKey) ? _crossovers [hashKey] : null);
        }
Exemplo n.º 4
0
 public CrossoverLogEntry(Crossover.CrossoverType method)
 {
     Method = method;
 }