Beispiel #1
0
        public Evaluator(INeatConfiguration neatConfiguration, IGenesisGenomeProvider genomeProvider, IInnovationPointGenerator nodeInnovationGenerator, IInnovationPointGenerator connectionInnovationGenerator, IMutation addConnectionMutation, IMutation addNodeMutation, IMutation weightMutation, ICrossFunctionStrategy crossFunctionStrategy, IRandom random)
        {
            _neatConfiguration             = neatConfiguration;
            _nodeInnovationGenerator       = nodeInnovationGenerator;
            _connectionInnovationGenerator = connectionInnovationGenerator;
            _addConnectionMutation         = addConnectionMutation;
            _addNodeMutation       = addNodeMutation;
            _weightMutation        = weightMutation;
            _crossFunctionStrategy = crossFunctionStrategy;
            _random  = random;
            _genomes = Enumerable.Repeat(genomeProvider.GenerateGenesisGenome(), neatConfiguration.PopulationSize).ToList();

            _evaluatedGenomes = new List <FitnessGenome>();
            _nextGeneration   = new List <Genome>();

            _lastGenerationResults = new List <FitnessGenome>();
        }
Beispiel #2
0
 public WeightOfAHundred(INeatConfiguration neatConfiguration, IGenesisGenomeProvider genomeProvider, IInnovationPointGenerator nodeInnovationGenerator, IInnovationPointGenerator connectionInnovationGenerator, IMutation addConnectionMutation, IMutation addNodeMutation, IMutation weightMutation, ICrossFunctionStrategy crossFunctionStrategy, IRandom random) : base(neatConfiguration, genomeProvider, nodeInnovationGenerator, connectionInnovationGenerator, addConnectionMutation, addNodeMutation, weightMutation, crossFunctionStrategy, random)
 {
 }
Beispiel #3
0
 public XORNNEvaluator(INeatConfiguration neatConfiguration, IGenesisGenomeProvider genomeProvider, IInnovationPointGenerator nodeInnovationGenerator, IInnovationPointGenerator connectionInnovationGenerator, IMutation addConnectionMutation, IMutation addNodeMutation, IMutation weightMutation, ICrossFunctionStrategy crossFunctionStrategy, IRandom random, ProblemDomain problemDomain) : base(neatConfiguration, genomeProvider, nodeInnovationGenerator, connectionInnovationGenerator, addConnectionMutation, addNodeMutation, weightMutation, crossFunctionStrategy, random)
 {
     _problemDomain = problemDomain;
 }