public Osobnik NajlepszyWPopulacji()
        {
            Osobnik najlepszy = Osobniki[0];

            for (int i = 1; i < RozmiarPopulacji; i++)
            {
                najlepszy = Środowisko.Lepszy(najlepszy, Osobniki[i]);
            }

            NajlepszyWHistorii = Środowisko.Lepszy(najlepszy, NajlepszyWHistorii);

            return(najlepszy);
        }
        public void GenerujNowąPopulację_Turniej()
        {
            Populacja nowePokolenie = new Populacja();

            for (int i = 0; i < RozmiarPopulacji; i++)
            {
                do
                {
                    Osobnik mama = Selekcja_Turniej();
                    Osobnik tata = Selekcja_Turniej();

                    nowePokolenie.Osobniki[i] = Osobnik.Krzyżowanie(mama, tata);
                    nowePokolenie.Osobniki[i].Mutacja();
                } while(nowePokolenie.Osobniki[i].ŚmiertelnieZmutowany()); // Niektóre osobniki mogą być niedopuszczalne do rozwiązania
            }

            NajlepszyWHistorii = Środowisko.Lepszy(NajlepszyWHistorii, nowePokolenie.NajlepszyWPopulacji());
        }