Esempio n. 1
0
 public ConfigOptimizerEA(IEAConfiguration optimizerConfig, IRandomNumberGenerator random, bool verbose = true)
     : base(optimizerConfig, random)
 {
     _verbose = verbose;
     if (verbose)
     {
         NewBestFitnessEvent += (best, gen) =>
         {
             Console.WriteLine($"\nNew best at generation #{gen}: fitness = {best.Fitness}");
             Console.WriteLine(best.ToString());
             Console.WriteLine();
         };
         NewGenerationEvent += (gen) => Console.Write($"-{gen}");
         TerminationEvent   += (reason) =>
         {
             if (reason == TerminationReason.FitnessLimitReached)
             {
                 Console.WriteLine($"\nFitness limit reached ({this.Best.Fitness})");
             }
             else if (reason == TerminationReason.GenerationLimitReached)
             {
                 Console.WriteLine($"\nGeneration limit reached ({this.Generation})");
             }
         };
     }
 }
Esempio n. 2
0
 public TournamentParentSelection(IEAConfiguration configuration)
 {
     if (configuration.TournamentSize < 2)
     {
         throw new ArgumentException($"Tournament size must be >= 2, but is {configuration.TournamentSize}", "TournamentSize");
     }
     _tournamentSize = configuration.TournamentSize;
     _prob           = configuration.TournamentProbability;
 }
Esempio n. 3
0
 public TournamentParentSelectionOld(IEAConfiguration configuration)
 {
     if (configuration.TournamentSize < 2)
     {
         throw new ArgumentException("TournamentSize");
     }
     _tournamentSize = configuration.TournamentSize;
     _prob           = configuration.TournamentProbability;
 }
Esempio n. 4
0
 public TestEASeeded(IEAConfiguration configuration, IRandomNumberGenerator rng) : base(configuration, rng)
 {
 }
Esempio n. 5
0
 public LOLZEA(IEAConfiguration config, IRandomNumberGenerator rng)
     : base(config, rng)
 {
 }
Esempio n. 6
0
 protected override EA CreateTargetEA(IEAConfiguration targetConfig, IRandomNumberGenerator random)
 {
     return(new HammingEA(targetConfig, random));
 }
Esempio n. 7
0
 public HammingOptimizer(IEAConfiguration optimizerConfig, IRandomNumberGenerator random)
     : base(optimizerConfig, random)
 {
 }
Esempio n. 8
0
 protected abstract EA CreateTargetEA(IEAConfiguration targetConfig, IRandomNumberGenerator random);
Esempio n. 9
0
 public RankParentSelection(IEAConfiguration configuration)
 {
     _min = configuration.RankSelectionMinProbability;
     _max = configuration.RankSelectionMaxProbability;
 }