コード例 #1
0
        /// <summary>
        /// Resets this instance.
        /// </summary>
        public virtual void Reset()
        {
            ImprovisationCount = 0;
            ImprovisationCountWithTheSameBestValue = 0;
            BestHarmonyObjectiveValue = double.PositiveInfinity;

            HarmonyMemory.Clear();
        }
コード例 #2
0
        /// <summary>
        /// Merges solutions from Harmony Memory and generated by Ant Colony optimization
        /// </summary>
        /// <param name="antColonySolutions">Ant colony solutions</param>
        private void MergeHarmonyMemoryWithAntSolutions(IEnumerable <Harmony <T> > antColonySolutions)
        {
            var allHarmonies = HarmonyMemory.GetAll()
                               .Concat(antColonySolutions)
                               .OrderBy(h => h.ObjectiveValue)
                               .ToList();

            HarmonyMemory.Clear();

            HarmonyMemory.AddRange(allHarmonies);
        }