/// <summary>
        /// Funkcja wykonuje Metadynamikę
        /// </summary>
        public void DoMetaDynamic()
        {
            Populationn.SortAscByProbability();
            var howManyToTake = Options.nWorstGenToThrow;

            if (howManyToTake > Populationn.Gens.Count)
            {
                howManyToTake = Populationn.Gens.Count;
            }
            Populationn.Gens.RemoveRange(0, howManyToTake);
            for (int i = 0; i < howManyToTake; i++)
            {
                Populationn.Add(SimpleGensGenerator.GetSingleGen(Options, Function));
            }
            Populationn.CalculateSimilarity(AntiGen);
            Populationn.SortDescByProbability();
        }
 /// <summary>
 /// Funkcja tworzy antygen
 /// </summary>
 public void MakeAntyGen()
 {
     AntiGen            = SimpleGensGenerator.GetSingleGen(options, Function);
     AntiGen.Similarity = 100;
 }
 /// <summary>
 /// Funkcja Przepisuje początkową populację
 /// </summary>
 public void PrepareInitialPopulation()
 {
     Populationn = SimpleGensGenerator.GetGensAsPopulation(options, Function);
 }