示例#1
0
        public static void Solve(SolverBase <ITSPTW, ITSPTWObjective, IRoute> solver, string problemName, TSPTWObjectiveBase objective)
        {
            OsmSharp.Logging.Log.TraceEvent("Program.Solve", Logging.TraceEventType.Information,
                                            string.Format("Solving: {0}", problemName));

            var problem = OsmSharp.TSPTW.Parser.TSPTWProblemReader.Read(
                Assembly.GetExecutingAssembly().GetManifestResourceStream(problemName));

            Program.Solve(solver, problem, objective);
        }
示例#2
0
        public static void Solve(SolverBase <ITSPTW, ITSPTWObjective, IRoute> solver, ITSPTW problem, TSPTWObjectiveBase objective)
        {
            var info = new PerformanceInfoConsumer("solver");

            info.Start();

            var fitness = 0.0;
            var route   = solver.Solve(problem, objective, out fitness);

            info.Stop();

            OsmSharp.Logging.Log.TraceEvent("Program.Solve", Logging.TraceEventType.Information,
                                            string.Format("Finished with {0}", fitness));
        }
示例#3
0
        public static void SolveAll(SolverBase <ITSPTW, ITSPTWObjective, IRoute> solver, string path, TSPTWObjectiveBase objective)
        {
            var resourceNames = Assembly.GetExecutingAssembly().GetManifestResourceNames();

            foreach (var resourceName in resourceNames)
            {
                if (resourceName.StartsWith(path))
                {
                    Program.Solve(solver, resourceName, objective);
                }
            }
        }