Exemplo n.º 1
0
        public void IsMetReturnsTrueForMaxIterations()
        {
            var terminationCriterion = new MaxIterations(maximum: 5);
            var maxIterations        = MaxIterationsTest.CreateCmaEsData(currentGeneration: 5);

            Assert.True(terminationCriterion.IsMet(maxIterations), "Termination criterion should have been met.");
        }
Exemplo n.º 2
0
        public void IsMetReturnsFalseForAlmostMaxIterations()
        {
            var terminationCriterion = new MaxIterations(maximum: 5);
            var almostMaxIterations  = MaxIterationsTest.CreateCmaEsData(currentGeneration: 4);

            Assert.False(terminationCriterion.IsMet(almostMaxIterations), "Termination criterion should not have been met.");
        }
Exemplo n.º 3
0
 public void Write(WordWriter writer)
 {
     writer.WriteWord((uint)Value);
     if (Enumerant.DependencyLength == (Value & Enumerant.DependencyLength))
     {
         DependencyLength.Write(writer);
     }
     if (Enumerant.MinIterations == (Value & Enumerant.MinIterations))
     {
         MinIterations.Write(writer);
     }
     if (Enumerant.MaxIterations == (Value & Enumerant.MaxIterations))
     {
         MaxIterations.Write(writer);
     }
     if (Enumerant.IterationMultiple == (Value & Enumerant.IterationMultiple))
     {
         IterationMultiple.Write(writer);
     }
     if (Enumerant.PeelCount == (Value & Enumerant.PeelCount))
     {
         PeelCount.Write(writer);
     }
     if (Enumerant.PartialCount == (Value & Enumerant.PartialCount))
     {
         PartialCount.Write(writer);
     }
 }
Exemplo n.º 4
0
        public virtual uint GetWordCount()
        {
            uint wordCount = 1;

            if (Enumerant.DependencyLength == (Value & Enumerant.DependencyLength))
            {
                wordCount += DependencyLength.GetWordCount();
            }
            if (Enumerant.MinIterations == (Value & Enumerant.MinIterations))
            {
                wordCount += MinIterations.GetWordCount();
            }
            if (Enumerant.MaxIterations == (Value & Enumerant.MaxIterations))
            {
                wordCount += MaxIterations.GetWordCount();
            }
            if (Enumerant.IterationMultiple == (Value & Enumerant.IterationMultiple))
            {
                wordCount += IterationMultiple.GetWordCount();
            }
            if (Enumerant.PeelCount == (Value & Enumerant.PeelCount))
            {
                wordCount += PeelCount.GetWordCount();
            }
            if (Enumerant.PartialCount == (Value & Enumerant.PartialCount))
            {
                wordCount += PartialCount.GetWordCount();
            }
            return(wordCount);
        }
        private void OutputProgress()
        {
            var padding = "";

            for (var s = 0; s < MaxIterations.ToString().Length - 1; s++)
            {
                padding += " ";
            }

            Console.WriteLine($"Iteration: {padding}{CurrentIteration} | Error: {_l2Error:F8}");
        }
            private void ApplyDefaultParameters()
            {
                if (Logger == null)
                {
                    Logger = new BestOfIterationLogger();
                }
                if (ConvergenceCriterion == null)
                {
                    ConvergenceCriterion = new MaxIterations(100 * problem.Dimension);
                }
                if (Initializer == null)
                {
                    Initializer = new RealUniformRandomInitializer(problem);
                }

                // The GA specific default parameters are provided be the implementation of this Builder
                if (Encoding == null)
                {
                    Encoding = DefaultEncoding;
                }
                if (PopulationSize == 0)
                {
                    PopulationSize = DefaultPopulationSize;
                }
                if (PopulationStrategy == null)
                {
                    PopulationStrategy = DefaultPopulationStrategy;
                }
                if (Selection == null)
                {
                    Selection = DefaultSelection;
                }
                if (Recombination == null)
                {
                    Recombination = DefaultRecombination;
                }
                if (Mutation == null)
                {
                    Mutation = DefaultMutation;
                }
            }
Exemplo n.º 7
0
        public void IsMetThrowsForMissingCmaEsData()
        {
            var terminationCriterion = new MaxIterations(maximum: 5);

            Assert.Throws <ArgumentNullException>(() => terminationCriterion.IsMet(data: null));
        }