private static double TspCanonicalDistance(string problemName, int nrNodes) { var tspLib = new TspLib95(RootDir); tspLib.LoadTSP(problemName); var problem = tspLib.GetItemByName(problemName, ProblemType.TSP).Problem; var nodes = Enumerable.Range(1, nrNodes); var tour = new Tour(problemName, "", nodes.Count(), nodes); return problem.TourDistance(tour); }
public void CtorGivenItemThatDoesNotHave2DNodesShouldThrowArgumentOutOfRangeException(string tspProblemName) { // arrange var tspLib = new TspLib95(Helpers.LibPath); tspLib.LoadTSP(tspProblemName); var items = tspLib.TSPItems(); // assert // ReSharper disable once ObjectCreationAsStatement Assert.Throws<ArgumentOutOfRangeException>(() => new SymmetricTspItemInfoProvider(items.First())); }
public void LoadByNameNullDir() { var tspLib = new TspLib95(RootDir); tspLib.LoadTSP(""); }