You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

The root page 15DOTs60ia13:Tutorial could not be found in space 15.S60 SSIM: Software Tools for Operations Research.

Solving TSPLIB Instances

The file tspSolver/src/main/Main.java contains code that will run your solver on instances from the TSPLIB database. The main method of this class begins with

	public static void main(String[] args) {
		String[] problemNames = new String[]{"bier127","eil51","brd14051","ch130","ch150","d198", "d493","d657", "d1291","fl1400"};
		String problemName = problemNames[1];
		//...

Here the elements of problemNames are files in the directory sampleData/TSPLIB/ that existing code will parse for you into a problem instance. The number in the file name refers to the number of cities in the problem. You can adjust which problem is attempted by assigning a different value to problemName (by changing the index used to access problemNames, or if you prefer, typing in a file name manually). Try running your solver on a few different instances (start with smaller ones).

Unknown macro: {chart}

Problem Name

eil51

bier127

ch130

ch150

d198

Run time

0.11

0.77

1.98

5.09

17.57

Performance degrades pretty quickly on larger problems. On my machine, d493 took over 5000 seconds to solve, and created over 250,000 nodes in branch and bound!

Interpreting CPLEX Output

When running the solver, the output generated by CPLEX is directed is printed out to the console. A complete explanation of what all of the output means can be found in the user manual here. We will explain the output as needed to motivate improvements to our TSP solver.

  • No labels