Beispiel #1
0
 private void ZwróćPoprawnąTrasę(Osobnik najlepszy)
 {
     if (TSP.SprawdźPoprawnośćTrasy(najlepszy))
     {
         Console.WriteLine("Najlepsza znaleziona poprawna trasa: ");
         TSP.WyświetlNajlepszego(najlepszy);
     }
     else
     {
         Console.WriteLine("Znaleziona trasa nie jest poprawna.");
     }
 }
Beispiel #2
0
        public void WykonajIterację(ref List <Osobnik> osobnicy, ref Osobnik najlepszy)
        {
            List <Osobnik> rodzice = new List <Osobnik>();

            rodzice = TSP.WybierzTurniej(osobnicy, TSP.Instancja.distances, TSP.Instancja.uczestnicyTurnieju);

            rodzice = TSP.KrzyżujOX(rodzice);

            rodzice = TSP.Mutuj(rodzice, Osobnik.liczbaMiast, TSP.Instancja.parametrMutacji);

            foreach (Osobnik o in rodzice)
            {
                o.OceńOsobnika(TSP.Instancja.distances);
            }

            najlepszy = new Osobnik(TSP.Instancja.ZnajdźMinimumWPętli(osobnicy, najlepszy, TSP.Instancja.licznikGłówny));
            osobnicy  = rodzice;
            TSP.Instancja.licznikGłówny++;
        }