tsp_random, an Octave code which seeks a solution of the Traveling Salesperson Problem (TSP), by accepting a list of city coordinates, and randomly generating round trips that visit every city, returning the shortest tour found.
The user must prepare a file beforehand, containing the city coordinates, which will be read by the code.
A tour of n cities can be represented as a permutation p on the integers 1 through n. The cost of the tour, that is, the length, is the sum
cost = sum ( 1 <= i <= n ) norm ( x(p(i)) - x(p(i+1)) )
where p(n+1) is understood to mean p(1).
In the sampling method, we simply generate sample_num permutations, each of which represents a tour, and return the permutation which has observed to have the shortest length. Since, except for small problems, there are typically an enormous number of possible tours, this method is unlikely to produce optimal results, but it may give some idea of the range of length of typical tours.
The information on this web page is distributed under the MIT license.
tsp_random is available in a MATLAB version and an Octave version and a Python version.
concorde, examples which call concorde(), which solves the traveling salesman problem (TSP), mixed integer programming, and related network optimization problems.
octave_combinatorics, an Octave code which considers a variety of problems in combinatorics involving counting, combinations, permutations, and so on.
tsp, a dataset directory which contains test data for the traveling salesperson problem (TSP) including the AT&T 48 state capital test, and Dantzig's 42 city test;
tsp_anneal, an Octave code which is given a city-to-city distance table, and solves the traveling salesperson problem (TSP) using simulated annealing.
tsp_brute, an Octave code which is given a city-to-city distance table, and solves a (small) traveling salesperson problem (TSP), using brute force.
tsp_descent, an Octave code which is given a city-to-city distance table, chooses an initial tour at random, and then tries simple variations, seeking to quickly find a tour of lower cost for the traveling salesperson problem (TSP).
tsp_display, an Octave code which displays the solution of a Traveling Salesman Problem (TSP). Graphics files are created for processing by gnuplot().
tsp_moler, an Octave code which seeks the shortest round trip visiting every city on a list, the traveling salesperson problem (TSP). The original version was written by Cleve Moler.
tsp_nearest, an Octave code which is given a city-to-city distance table, and solves a small traveling salesperson problem (TSP) using the nearest neighbor algorithm. It picks a starting city at random, and then successively visits the nearest unvisited city.