static void Main(string[] args) { var cities = new City[] { new City(500, 500), new City(2000, 250), new City(1000, 2500), new City(1500, 1200), new City(2465, 1779) }; var result = new SimulatedAnnealing().Start(cities, startTemperature: 100, endTemperature: 0.000001); Console.Write($"Energy: {result.Energy}, Route: "); for (int i = 0; i < result.State.Length; i++) { Console.Write($"{result.State[i]} "); } Console.WriteLine("Press any key..."); Console.ReadKey(); }
static void Main(string[] args) { #region preparing input data double initialTemperature = 100; double endTemperature = 0.000001; List<City> cities = new List<City>(); cities.Add(new City(500, 500)); cities.Add(new City(2000, 250)); cities.Add(new City(1000, 2500)); cities.Add(new City(1500, 1200)); cities.Add(new City(2465, 1779)); #endregion SimulatedAnnealing annealing = new SimulatedAnnealing(cities, initialTemperature, endTemperature); annealing.Run(); string route = String.Empty; foreach (int city in annealing.State) { route += city; } Console.WriteLine(String.Format("Route: {0}. Energy: {1}", route, annealing.Energy)); Console.WriteLine("Press any key..."); Console.ReadKey(); }