本文整理汇总了C#中Problem.importScenario方法的典型用法代码示例。如果您正苦于以下问题:C# Problem.importScenario方法的具体用法?C# Problem.importScenario怎么用?C# Problem.importScenario使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Problem
的用法示例。
在下文中一共展示了Problem.importScenario方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
public static void Main(string[] args)
{
Util.ArgsProcessor argsProcessor = new Util.ArgsProcessor();
argsProcessor.process(args, Parameters.Options, Parameters.Switches);
if (argsProcessor.getSwitchArg(Parameters.HelpSwitch)) {
Parameters.printHelp();
}
Solver.Environment env = loadEnvironment(argsProcessor);
string path;
path = argsProcessor.getMappedArg(Parameters.ConfigurePathOption);
TabuSolver.Configure cfg = (path != null)
? Util.readJsonFile<TabuSolver.Configure>(path)
: new TabuSolver.Configure();
INRC2.JsonData input = new INRC2.JsonData();
Problem problem = new Problem();
input.scenario = Util.readJsonFile<INRC2.JsonData.ScenarioInfo>(
env.scenarioPath);
problem.importScenario(input);
input.weekdata = Util.readJsonFile<INRC2.JsonData.WeekdataInfo>(
env.weekdataPath);
problem.importWeekdata(input);
// load history last for it will initialize some assist data depending on scenario and weekdata
if (env.customInputPath != null) {
problem.readCustomFile(env.customInputPath);
} else {
input.history = Util.readJsonFile<INRC2.JsonData.HistoryInfo>(
env.historyPath);
problem.importHistory(input);
}
TabuSolver solver = new TabuSolver(problem, env, cfg);
solver.solve();
Util.writeJsonFile(env.solutionPath, problem.exportSolution(solver.Optima));
path = argsProcessor.getMappedArg(Parameters.LogPathOption);
if ((env.customOutputPath != null) || (path != null)) {
solver.adjustObjValueForLog();
if (env.customOutputPath != null) {
problem.writeCustomFile(env.customOutputPath, solver);
}
if (path != null) {
solver.print();
solver.record(path);
}
}
}