示例#1
0
文件: Program.cs 项目: eProw/Console
        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();
        }
示例#2
0
文件: Program.cs 项目: Miltt/Console
        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();
        }